diff --git a/CHANGELOG.md b/CHANGELOG.md index 75e35cfa06..565dbe4a2f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ # Changelog -## [15.13.0] (melonJS 2) - _2023-09-xx_ +## [15.13.0] (melonJS 2) - _2023-10-07_ ### Changed - UI: UITextButton `backgroundColor` and `hoverColor` properties are now deprecated in favor of `hoverOffColor` and `hoverOnColor` @@ -702,6 +702,7 @@ ------------------------------------------------------------------------------- +[15.13.0]: https://github.com/melonjs/melonJS/compare/15.12.0...15.13.0 [15.12.0]: https://github.com/melonjs/melonJS/compare/15.11.0...15.12.0 [15.11.0]: https://github.com/melonjs/melonJS/compare/15.10.0...15.11.0 [15.10.0]: https://github.com/melonjs/melonJS/compare/15.9.2...15.10.0 diff --git a/dist/melonjs.mjs/_virtual/_commonjsHelpers.js b/dist/melonjs.mjs/_virtual/_commonjsHelpers.js index dd1fb7e67c..1fe4699386 100644 --- a/dist/melonjs.mjs/_virtual/_commonjsHelpers.js +++ b/dist/melonjs.mjs/_virtual/_commonjsHelpers.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/_virtual/earcut.js b/dist/melonjs.mjs/_virtual/earcut.js index 02c709230e..bb554e9e6f 100644 --- a/dist/melonjs.mjs/_virtual/earcut.js +++ b/dist/melonjs.mjs/_virtual/earcut.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/_virtual/howler.js b/dist/melonjs.mjs/_virtual/howler.js index b9dbff97a8..1b10ed40a7 100644 --- a/dist/melonjs.mjs/_virtual/howler.js +++ b/dist/melonjs.mjs/_virtual/howler.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/_virtual/index.js b/dist/melonjs.mjs/_virtual/index.js index 8693711f70..b8b77eca5c 100644 --- a/dist/melonjs.mjs/_virtual/index.js +++ b/dist/melonjs.mjs/_virtual/index.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/application/application.js b/dist/melonjs.mjs/application/application.js index 2b278c280e..49a8c51f39 100644 --- a/dist/melonjs.mjs/application/application.js +++ b/dist/melonjs.mjs/application/application.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/application/header.js b/dist/melonjs.mjs/application/header.js index c3e91361a9..6949bf7455 100644 --- a/dist/melonjs.mjs/application/header.js +++ b/dist/melonjs.mjs/application/header.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/application/resize.js b/dist/melonjs.mjs/application/resize.js index 3a4c81f3b5..a1d0eb8e10 100644 --- a/dist/melonjs.mjs/application/resize.js +++ b/dist/melonjs.mjs/application/resize.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/application/settings.js b/dist/melonjs.mjs/application/settings.js index ec5cb7bdaa..e812d1427e 100644 --- a/dist/melonjs.mjs/application/settings.js +++ b/dist/melonjs.mjs/application/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/audio/audio.js b/dist/melonjs.mjs/audio/audio.js index 6364c2ca86..69dd8df0a9 100644 --- a/dist/melonjs.mjs/audio/audio.js +++ b/dist/melonjs.mjs/audio/audio.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/camera/camera2d.js b/dist/melonjs.mjs/camera/camera2d.js index 2d23b86d2c..327c33f05a 100644 --- a/dist/melonjs.mjs/camera/camera2d.js +++ b/dist/melonjs.mjs/camera/camera2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/const.js b/dist/melonjs.mjs/const.js index 078b651d83..a4d479c143 100644 --- a/dist/melonjs.mjs/const.js +++ b/dist/melonjs.mjs/const.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/ellipse.js b/dist/melonjs.mjs/geometries/ellipse.js index 469f389f5d..83df89b105 100644 --- a/dist/melonjs.mjs/geometries/ellipse.js +++ b/dist/melonjs.mjs/geometries/ellipse.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/line.js b/dist/melonjs.mjs/geometries/line.js index f04137aee7..86736edbb4 100644 --- a/dist/melonjs.mjs/geometries/line.js +++ b/dist/melonjs.mjs/geometries/line.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/path2d.js b/dist/melonjs.mjs/geometries/path2d.js index 4c86412f8a..59bdd97c45 100644 --- a/dist/melonjs.mjs/geometries/path2d.js +++ b/dist/melonjs.mjs/geometries/path2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/point.js b/dist/melonjs.mjs/geometries/point.js index c358746ace..b7cc25d92c 100644 --- a/dist/melonjs.mjs/geometries/point.js +++ b/dist/melonjs.mjs/geometries/point.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/poly.js b/dist/melonjs.mjs/geometries/poly.js index a8db7d090d..809104afe4 100644 --- a/dist/melonjs.mjs/geometries/poly.js +++ b/dist/melonjs.mjs/geometries/poly.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/rectangle.js b/dist/melonjs.mjs/geometries/rectangle.js index eb7d26d197..12469aa437 100644 --- a/dist/melonjs.mjs/geometries/rectangle.js +++ b/dist/melonjs.mjs/geometries/rectangle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/geometries/roundrect.js b/dist/melonjs.mjs/geometries/roundrect.js index f855931076..a71e9eaf25 100644 --- a/dist/melonjs.mjs/geometries/roundrect.js +++ b/dist/melonjs.mjs/geometries/roundrect.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/index.js b/dist/melonjs.mjs/index.js index 9b0ed5c307..da8bf84773 100644 --- a/dist/melonjs.mjs/index.js +++ b/dist/melonjs.mjs/index.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -112,7 +112,7 @@ import { initKeyboardEvent } from './input/keyboard.js'; * @name version * @type {string} */ -const version = "15.12.0"; +const version = "15.13.0"; /** * a flag indicating that melonJS is fully initialized diff --git a/dist/melonjs.mjs/input/gamepad.js b/dist/melonjs.mjs/input/gamepad.js index 1bddb155f6..3efa188c11 100644 --- a/dist/melonjs.mjs/input/gamepad.js +++ b/dist/melonjs.mjs/input/gamepad.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/input/input.js b/dist/melonjs.mjs/input/input.js index f7d4a461d1..5156a3b7da 100644 --- a/dist/melonjs.mjs/input/input.js +++ b/dist/melonjs.mjs/input/input.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/input/keyboard.js b/dist/melonjs.mjs/input/keyboard.js index 5dbe967ecd..568162d152 100644 --- a/dist/melonjs.mjs/input/keyboard.js +++ b/dist/melonjs.mjs/input/keyboard.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/input/pointer.js b/dist/melonjs.mjs/input/pointer.js index 3f4843e698..11716c1742 100644 --- a/dist/melonjs.mjs/input/pointer.js +++ b/dist/melonjs.mjs/input/pointer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/input/pointerevent.js b/dist/melonjs.mjs/input/pointerevent.js index 8c979a694c..6a65f2797e 100644 --- a/dist/melonjs.mjs/input/pointerevent.js +++ b/dist/melonjs.mjs/input/pointerevent.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/lang/console.js b/dist/melonjs.mjs/lang/console.js index 85e3a278a4..7cc8c8f77c 100644 --- a/dist/melonjs.mjs/lang/console.js +++ b/dist/melonjs.mjs/lang/console.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/lang/deprecated.js b/dist/melonjs.mjs/lang/deprecated.js index 813a5846d4..01cf6ec45f 100644 --- a/dist/melonjs.mjs/lang/deprecated.js +++ b/dist/melonjs.mjs/lang/deprecated.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/level.js b/dist/melonjs.mjs/level/level.js index 56d3520fb7..e8010c2ec3 100644 --- a/dist/melonjs.mjs/level/level.js +++ b/dist/melonjs.mjs/level/level.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXGroup.js b/dist/melonjs.mjs/level/tiled/TMXGroup.js index 94d454d678..178559a6a0 100644 --- a/dist/melonjs.mjs/level/tiled/TMXGroup.js +++ b/dist/melonjs.mjs/level/tiled/TMXGroup.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXLayer.js b/dist/melonjs.mjs/level/tiled/TMXLayer.js index c6b6ae8ac2..fbb2d6f0b1 100644 --- a/dist/melonjs.mjs/level/tiled/TMXLayer.js +++ b/dist/melonjs.mjs/level/tiled/TMXLayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXObject.js b/dist/melonjs.mjs/level/tiled/TMXObject.js index 375c920875..95cc4d8993 100644 --- a/dist/melonjs.mjs/level/tiled/TMXObject.js +++ b/dist/melonjs.mjs/level/tiled/TMXObject.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXTile.js b/dist/melonjs.mjs/level/tiled/TMXTile.js index e354020b26..cfc5499841 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTile.js +++ b/dist/melonjs.mjs/level/tiled/TMXTile.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXTileMap.js b/dist/melonjs.mjs/level/tiled/TMXTileMap.js index 4856911863..ccf115e876 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTileMap.js +++ b/dist/melonjs.mjs/level/tiled/TMXTileMap.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXTileset.js b/dist/melonjs.mjs/level/tiled/TMXTileset.js index e3772634f5..f8bdabb1cf 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTileset.js +++ b/dist/melonjs.mjs/level/tiled/TMXTileset.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js b/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js index 40f6a3f856..6e745fda0e 100644 --- a/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js +++ b/dist/melonjs.mjs/level/tiled/TMXTilesetGroup.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/TMXUtils.js b/dist/melonjs.mjs/level/tiled/TMXUtils.js index cfaa91e48a..c15974267a 100644 --- a/dist/melonjs.mjs/level/tiled/TMXUtils.js +++ b/dist/melonjs.mjs/level/tiled/TMXUtils.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/constants.js b/dist/melonjs.mjs/level/tiled/constants.js index b531206a9b..f5d1801c97 100644 --- a/dist/melonjs.mjs/level/tiled/constants.js +++ b/dist/melonjs.mjs/level/tiled/constants.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js b/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js index 88ed8fa204..1e85cbeca7 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js +++ b/dist/melonjs.mjs/level/tiled/renderer/TMXHexagonalRenderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js b/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js index 9a76a0dc72..14c635e4af 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js +++ b/dist/melonjs.mjs/level/tiled/renderer/TMXIsometricRenderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js b/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js index f743565dca..5fd0a477b0 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js +++ b/dist/melonjs.mjs/level/tiled/renderer/TMXOrthogonalRenderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js b/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js index 76dc0ac7a1..1e024c038c 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js +++ b/dist/melonjs.mjs/level/tiled/renderer/TMXRenderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js b/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js index 676fed466a..1c87020f5e 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js +++ b/dist/melonjs.mjs/level/tiled/renderer/TMXStaggeredRenderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/level/tiled/renderer/autodetect.js b/dist/melonjs.mjs/level/tiled/renderer/autodetect.js index 673bad192a..cde259e2e6 100644 --- a/dist/melonjs.mjs/level/tiled/renderer/autodetect.js +++ b/dist/melonjs.mjs/level/tiled/renderer/autodetect.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/cache.js b/dist/melonjs.mjs/loader/cache.js index cbb0c3fb53..0f5d0cbb58 100644 --- a/dist/melonjs.mjs/loader/cache.js +++ b/dist/melonjs.mjs/loader/cache.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/loader.js b/dist/melonjs.mjs/loader/loader.js index 3e904bf4bf..12b9dacf2b 100644 --- a/dist/melonjs.mjs/loader/loader.js +++ b/dist/melonjs.mjs/loader/loader.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/loadingscreen.js b/dist/melonjs.mjs/loader/loadingscreen.js index 060bc906ee..b5d01eadbb 100644 --- a/dist/melonjs.mjs/loader/loadingscreen.js +++ b/dist/melonjs.mjs/loader/loadingscreen.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/melonjs_logo.png.js b/dist/melonjs.mjs/loader/melonjs_logo.png.js index d72f11abf7..3ed539009d 100644 --- a/dist/melonjs.mjs/loader/melonjs_logo.png.js +++ b/dist/melonjs.mjs/loader/melonjs_logo.png.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/binary.js b/dist/melonjs.mjs/loader/parsers/binary.js index 1486e1aeb6..0b09f457c5 100644 --- a/dist/melonjs.mjs/loader/parsers/binary.js +++ b/dist/melonjs.mjs/loader/parsers/binary.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/fontface.js b/dist/melonjs.mjs/loader/parsers/fontface.js index 3c2524ba75..c48c0af554 100644 --- a/dist/melonjs.mjs/loader/parsers/fontface.js +++ b/dist/melonjs.mjs/loader/parsers/fontface.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/image.js b/dist/melonjs.mjs/loader/parsers/image.js index ee1f12fdc6..bda90c7aad 100644 --- a/dist/melonjs.mjs/loader/parsers/image.js +++ b/dist/melonjs.mjs/loader/parsers/image.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/json.js b/dist/melonjs.mjs/loader/parsers/json.js index 054edf6833..faf16a5be7 100644 --- a/dist/melonjs.mjs/loader/parsers/json.js +++ b/dist/melonjs.mjs/loader/parsers/json.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/script.js b/dist/melonjs.mjs/loader/parsers/script.js index 8328f441f4..668a972210 100644 --- a/dist/melonjs.mjs/loader/parsers/script.js +++ b/dist/melonjs.mjs/loader/parsers/script.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/parsers/tmx.js b/dist/melonjs.mjs/loader/parsers/tmx.js index f1dae4a638..a5f192ed4f 100644 --- a/dist/melonjs.mjs/loader/parsers/tmx.js +++ b/dist/melonjs.mjs/loader/parsers/tmx.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/loader/settings.js b/dist/melonjs.mjs/loader/settings.js index 0c939a8492..2b314f8b29 100644 --- a/dist/melonjs.mjs/loader/settings.js +++ b/dist/melonjs.mjs/loader/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/color.js b/dist/melonjs.mjs/math/color.js index a1fadf09b7..2f1932f357 100644 --- a/dist/melonjs.mjs/math/color.js +++ b/dist/melonjs.mjs/math/color.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/math.js b/dist/melonjs.mjs/math/math.js index f7425bce8b..7b11f260da 100644 --- a/dist/melonjs.mjs/math/math.js +++ b/dist/melonjs.mjs/math/math.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/matrix2.js b/dist/melonjs.mjs/math/matrix2.js index b2133dd9e7..7eae32e517 100644 --- a/dist/melonjs.mjs/math/matrix2.js +++ b/dist/melonjs.mjs/math/matrix2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/matrix3.js b/dist/melonjs.mjs/math/matrix3.js index 4eb3fc1a34..e736e9d084 100644 --- a/dist/melonjs.mjs/math/matrix3.js +++ b/dist/melonjs.mjs/math/matrix3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/observable_vector2.js b/dist/melonjs.mjs/math/observable_vector2.js index d3d123f2a7..b0dbbeedc5 100644 --- a/dist/melonjs.mjs/math/observable_vector2.js +++ b/dist/melonjs.mjs/math/observable_vector2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/observable_vector3.js b/dist/melonjs.mjs/math/observable_vector3.js index 2b733fdcc7..324ce92cf4 100644 --- a/dist/melonjs.mjs/math/observable_vector3.js +++ b/dist/melonjs.mjs/math/observable_vector3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/vector2.js b/dist/melonjs.mjs/math/vector2.js index c4ea50590c..5a89994044 100644 --- a/dist/melonjs.mjs/math/vector2.js +++ b/dist/melonjs.mjs/math/vector2.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/math/vector3.js b/dist/melonjs.mjs/math/vector3.js index 02c8829755..1c6ba1be2b 100644 --- a/dist/melonjs.mjs/math/vector3.js +++ b/dist/melonjs.mjs/math/vector3.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/particles/emitter.js b/dist/melonjs.mjs/particles/emitter.js index 082250384b..2cb28b901f 100644 --- a/dist/melonjs.mjs/particles/emitter.js +++ b/dist/melonjs.mjs/particles/emitter.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/particles/particle.js b/dist/melonjs.mjs/particles/particle.js index 2c22039cea..92c8391c93 100644 --- a/dist/melonjs.mjs/particles/particle.js +++ b/dist/melonjs.mjs/particles/particle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/particles/settings.js b/dist/melonjs.mjs/particles/settings.js index 3f8ff18b6c..a4c0035e2c 100644 --- a/dist/melonjs.mjs/particles/settings.js +++ b/dist/melonjs.mjs/particles/settings.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/body.js b/dist/melonjs.mjs/physics/body.js index 1a0b74a39f..0f4df1fb05 100644 --- a/dist/melonjs.mjs/physics/body.js +++ b/dist/melonjs.mjs/physics/body.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/bounds.js b/dist/melonjs.mjs/physics/bounds.js index 23acfde55c..dcf7a3b682 100644 --- a/dist/melonjs.mjs/physics/bounds.js +++ b/dist/melonjs.mjs/physics/bounds.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/collision.js b/dist/melonjs.mjs/physics/collision.js index c2a232f5a1..b355071599 100644 --- a/dist/melonjs.mjs/physics/collision.js +++ b/dist/melonjs.mjs/physics/collision.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/detector.js b/dist/melonjs.mjs/physics/detector.js index fcabea059b..01c22f40df 100644 --- a/dist/melonjs.mjs/physics/detector.js +++ b/dist/melonjs.mjs/physics/detector.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/quadtree.js b/dist/melonjs.mjs/physics/quadtree.js index 9bfd335338..8ae382358e 100644 --- a/dist/melonjs.mjs/physics/quadtree.js +++ b/dist/melonjs.mjs/physics/quadtree.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/response.js b/dist/melonjs.mjs/physics/response.js index b6284ee9fd..03ee4d902d 100644 --- a/dist/melonjs.mjs/physics/response.js +++ b/dist/melonjs.mjs/physics/response.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/sat.js b/dist/melonjs.mjs/physics/sat.js index 2f5195e12d..ce1475c642 100644 --- a/dist/melonjs.mjs/physics/sat.js +++ b/dist/melonjs.mjs/physics/sat.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/physics/world.js b/dist/melonjs.mjs/physics/world.js index 50b39b4ba3..a24b220845 100644 --- a/dist/melonjs.mjs/physics/world.js +++ b/dist/melonjs.mjs/physics/world.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/plugin/plugin.js b/dist/melonjs.mjs/plugin/plugin.js index e48461b89b..aec4aed10f 100644 --- a/dist/melonjs.mjs/plugin/plugin.js +++ b/dist/melonjs.mjs/plugin/plugin.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -37,9 +37,9 @@ class BasePlugin { * define the minimum required version of melonJS
* this can be overridden by the plugin * @type {string} - * @default "15.12.0" + * @default "15.13.0" */ - this.version = "15.12.0"; + this.version = "15.13.0"; /** * a reference to the app/game that registered this plugin diff --git a/dist/melonjs.mjs/renderable/collectable.js b/dist/melonjs.mjs/renderable/collectable.js index bf5a0112a4..bdbaf2cd43 100644 --- a/dist/melonjs.mjs/renderable/collectable.js +++ b/dist/melonjs.mjs/renderable/collectable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/colorlayer.js b/dist/melonjs.mjs/renderable/colorlayer.js index bad71775e4..0bc65d1c0c 100644 --- a/dist/melonjs.mjs/renderable/colorlayer.js +++ b/dist/melonjs.mjs/renderable/colorlayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/container.js b/dist/melonjs.mjs/renderable/container.js index ca4b5fdba9..01f5a4bc97 100644 --- a/dist/melonjs.mjs/renderable/container.js +++ b/dist/melonjs.mjs/renderable/container.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/draggable.js b/dist/melonjs.mjs/renderable/draggable.js index 7a4bc4ecd0..21bf3ae29b 100644 --- a/dist/melonjs.mjs/renderable/draggable.js +++ b/dist/melonjs.mjs/renderable/draggable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/dragndrop.js b/dist/melonjs.mjs/renderable/dragndrop.js index af0692b559..9c96e96696 100644 --- a/dist/melonjs.mjs/renderable/dragndrop.js +++ b/dist/melonjs.mjs/renderable/dragndrop.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/entity/entity.js b/dist/melonjs.mjs/renderable/entity/entity.js index 8905ee6c7a..4f0936f368 100644 --- a/dist/melonjs.mjs/renderable/entity/entity.js +++ b/dist/melonjs.mjs/renderable/entity/entity.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/imagelayer.js b/dist/melonjs.mjs/renderable/imagelayer.js index 47b2967d49..1841270e94 100644 --- a/dist/melonjs.mjs/renderable/imagelayer.js +++ b/dist/melonjs.mjs/renderable/imagelayer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/light2d.js b/dist/melonjs.mjs/renderable/light2d.js index ea93927211..8d58e8cd2e 100644 --- a/dist/melonjs.mjs/renderable/light2d.js +++ b/dist/melonjs.mjs/renderable/light2d.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/nineslicesprite.js b/dist/melonjs.mjs/renderable/nineslicesprite.js index ef7b6e4c1c..4f59a5b10b 100644 --- a/dist/melonjs.mjs/renderable/nineslicesprite.js +++ b/dist/melonjs.mjs/renderable/nineslicesprite.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/renderable.js b/dist/melonjs.mjs/renderable/renderable.js index 0030eaa921..8addb6fb3a 100644 --- a/dist/melonjs.mjs/renderable/renderable.js +++ b/dist/melonjs.mjs/renderable/renderable.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/sprite.js b/dist/melonjs.mjs/renderable/sprite.js index 4394ab5af1..3bd1078381 100644 --- a/dist/melonjs.mjs/renderable/sprite.js +++ b/dist/melonjs.mjs/renderable/sprite.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/bitmaptext.js b/dist/melonjs.mjs/renderable/text/bitmaptext.js index b7e65f05ac..7387a66a98 100644 --- a/dist/melonjs.mjs/renderable/text/bitmaptext.js +++ b/dist/melonjs.mjs/renderable/text/bitmaptext.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/bitmaptextdata.js b/dist/melonjs.mjs/renderable/text/bitmaptextdata.js index d41919a629..60118ce9d5 100644 --- a/dist/melonjs.mjs/renderable/text/bitmaptextdata.js +++ b/dist/melonjs.mjs/renderable/text/bitmaptextdata.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/glyph.js b/dist/melonjs.mjs/renderable/text/glyph.js index 9dd977a453..bfc7f69916 100644 --- a/dist/melonjs.mjs/renderable/text/glyph.js +++ b/dist/melonjs.mjs/renderable/text/glyph.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/text.js b/dist/melonjs.mjs/renderable/text/text.js index 5cb11960d9..404086bc14 100644 --- a/dist/melonjs.mjs/renderable/text/text.js +++ b/dist/melonjs.mjs/renderable/text/text.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/textmetrics.js b/dist/melonjs.mjs/renderable/text/textmetrics.js index 5e136b4e6a..1a83cbf0e2 100644 --- a/dist/melonjs.mjs/renderable/text/textmetrics.js +++ b/dist/melonjs.mjs/renderable/text/textmetrics.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/text/textstyle.js b/dist/melonjs.mjs/renderable/text/textstyle.js index 2474a254d9..a89b4f7af0 100644 --- a/dist/melonjs.mjs/renderable/text/textstyle.js +++ b/dist/melonjs.mjs/renderable/text/textstyle.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/trigger.js b/dist/melonjs.mjs/renderable/trigger.js index 2d02cc4c87..71e05358e7 100644 --- a/dist/melonjs.mjs/renderable/trigger.js +++ b/dist/melonjs.mjs/renderable/trigger.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/ui/uibaseelement.js b/dist/melonjs.mjs/renderable/ui/uibaseelement.js index e27fc7f3ce..2b1a3f11a2 100644 --- a/dist/melonjs.mjs/renderable/ui/uibaseelement.js +++ b/dist/melonjs.mjs/renderable/ui/uibaseelement.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/ui/uispriteelement.js b/dist/melonjs.mjs/renderable/ui/uispriteelement.js index 798e8df0d1..5e0be5f7de 100644 --- a/dist/melonjs.mjs/renderable/ui/uispriteelement.js +++ b/dist/melonjs.mjs/renderable/ui/uispriteelement.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/renderable/ui/uitextbutton.js b/dist/melonjs.mjs/renderable/ui/uitextbutton.js index 2020723348..488281a238 100644 --- a/dist/melonjs.mjs/renderable/ui/uitextbutton.js +++ b/dist/melonjs.mjs/renderable/ui/uitextbutton.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -26,8 +26,8 @@ class UITextButton extends UIBaseElement { * @param {number} [settings.size=1] - The scale factor of the BitmapText * @param {string} [settings.text] - The text to display * @param {string} [settings.bindKey] - The key to bind the action to (default: none) - * @param {string} [settings.backgroundColor="#00aa0080"] - The css value of a background color - * @param {string} [settings.hoverColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button + * @param {string} [settings.hoverOffColor="#00aa0080"] - The css value of a color to be used if the pointer is not hovering over the button + * @param {string} [settings.hoverOnColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button * @param {string} [settings.borderStrokeColor="#000000"] - The css value of a color to be used to draw the border * @param {string} [settings.fillStyle] - The css value of a tint color to be used to tint the BitmapText * @param {string} [settings.textAlign="center"] - horizontal text alignment @@ -44,6 +44,8 @@ class UITextButton extends UIBaseElement { * // if you omit the next two, size is calculated by the size of the text * borderWidth: 200, * borderHeight: 20, + * backgroundColor: '#00aa0080', + * hoverColor: '#00ff00ff' * }); * } * @@ -64,16 +66,18 @@ class UITextButton extends UIBaseElement { this.bindKey = settings.bindKey || -1; /** - * The css value of a background color + * The css value of a color to be used if the pointer is nothovering over the button * @type {string} */ - this.backgroundColor = settings.backgroundColor || "#00aa0080"; + // keep settings.backgroundColor for backward compatibility + this.hoverOffColor = settings.hoverOffColor || settings.backgroundColor || "#00aa0080"; /** * The css value of a color to be used if the pointer hovers over the button * @type {string} */ - this.hoverColor = settings.hoverColor || "#00ff00ff"; + // keep settings.hoverColor for backward compatibility + this.hoverOnColor = settings.hoverOnColor || settings.hoverColor || "#00ff00ff"; /** * The css value of a color to be used to draw the border @@ -128,16 +132,13 @@ class UITextButton extends UIBaseElement { draw(renderer) { if (this.hover === true) { - renderer.setColor(this.hoverColor); + renderer.setColor(this.hoverOnColor); } else { - renderer.setColor(this.backgroundColor); + renderer.setColor(this.hoverOffColor); } renderer.fill(this.border); renderer.setColor(this.borderStrokeColor); renderer.stroke(this.border); - this.bitmapText.preDraw(renderer); - this.bitmapText.draw(renderer); - this.bitmapText.postDraw(renderer); super.draw(renderer); } } diff --git a/dist/melonjs.mjs/state/stage.js b/dist/melonjs.mjs/state/stage.js index 5d7e09379f..935b27dd8e 100644 --- a/dist/melonjs.mjs/state/stage.js +++ b/dist/melonjs.mjs/state/stage.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/state/state.js b/dist/melonjs.mjs/state/state.js index b8e15a9824..d42fe74472 100644 --- a/dist/melonjs.mjs/state/state.js +++ b/dist/melonjs.mjs/state/state.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/device.js b/dist/melonjs.mjs/system/device.js index af0af9158f..13ab9b9af0 100644 --- a/dist/melonjs.mjs/system/device.js +++ b/dist/melonjs.mjs/system/device.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/dom.js b/dist/melonjs.mjs/system/dom.js index eb73657717..82f190b59f 100644 --- a/dist/melonjs.mjs/system/dom.js +++ b/dist/melonjs.mjs/system/dom.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/event.js b/dist/melonjs.mjs/system/event.js index 853684700f..23cf322b20 100644 --- a/dist/melonjs.mjs/system/event.js +++ b/dist/melonjs.mjs/system/event.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/platform.js b/dist/melonjs.mjs/system/platform.js index 6020adc695..fc0b8a206b 100644 --- a/dist/melonjs.mjs/system/platform.js +++ b/dist/melonjs.mjs/system/platform.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/pooling.js b/dist/melonjs.mjs/system/pooling.js index f35448ea44..52d7a74349 100644 --- a/dist/melonjs.mjs/system/pooling.js +++ b/dist/melonjs.mjs/system/pooling.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/save.js b/dist/melonjs.mjs/system/save.js index 4739b80431..2c969d3939 100644 --- a/dist/melonjs.mjs/system/save.js +++ b/dist/melonjs.mjs/system/save.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/system/timer.js b/dist/melonjs.mjs/system/timer.js index 6186475586..75e2e7215f 100644 --- a/dist/melonjs.mjs/system/timer.js +++ b/dist/melonjs.mjs/system/timer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/tweens/easing.js b/dist/melonjs.mjs/tweens/easing.js index 2a8b5c0cdf..5e47c6a525 100644 --- a/dist/melonjs.mjs/tweens/easing.js +++ b/dist/melonjs.mjs/tweens/easing.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/tweens/interpolation.js b/dist/melonjs.mjs/tweens/interpolation.js index 37b75ff429..fd0989ea5d 100644 --- a/dist/melonjs.mjs/tweens/interpolation.js +++ b/dist/melonjs.mjs/tweens/interpolation.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/tweens/tween.js b/dist/melonjs.mjs/tweens/tween.js index 4932a7bf4e..d5ae9077e3 100644 --- a/dist/melonjs.mjs/tweens/tween.js +++ b/dist/melonjs.mjs/tweens/tween.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/agent.js b/dist/melonjs.mjs/utils/agent.js index 884ed9dc81..1323437d91 100644 --- a/dist/melonjs.mjs/utils/agent.js +++ b/dist/melonjs.mjs/utils/agent.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/array.js b/dist/melonjs.mjs/utils/array.js index f152e3afbd..c761fca960 100644 --- a/dist/melonjs.mjs/utils/array.js +++ b/dist/melonjs.mjs/utils/array.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/file.js b/dist/melonjs.mjs/utils/file.js index 5549d60be3..50f0cc30f3 100644 --- a/dist/melonjs.mjs/utils/file.js +++ b/dist/melonjs.mjs/utils/file.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/function.js b/dist/melonjs.mjs/utils/function.js index d191152dbd..54cb1a7445 100644 --- a/dist/melonjs.mjs/utils/function.js +++ b/dist/melonjs.mjs/utils/function.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/string.js b/dist/melonjs.mjs/utils/string.js index 2004c409f6..c264da7b1e 100644 --- a/dist/melonjs.mjs/utils/string.js +++ b/dist/melonjs.mjs/utils/string.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/utils/utils.js b/dist/melonjs.mjs/utils/utils.js index f9d158912d..863ef6e615 100644 --- a/dist/melonjs.mjs/utils/utils.js +++ b/dist/melonjs.mjs/utils/utils.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/canvas/canvas_renderer.js b/dist/melonjs.mjs/video/canvas/canvas_renderer.js index 0a0d9a2fdc..fe687ff8b8 100644 --- a/dist/melonjs.mjs/video/canvas/canvas_renderer.js +++ b/dist/melonjs.mjs/video/canvas/canvas_renderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/renderer.js b/dist/melonjs.mjs/video/renderer.js index 5327b6ffbe..c6c19267d9 100644 --- a/dist/melonjs.mjs/video/renderer.js +++ b/dist/melonjs.mjs/video/renderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/texture/atlas.js b/dist/melonjs.mjs/video/texture/atlas.js index 8c412e2761..932268c2cf 100644 --- a/dist/melonjs.mjs/video/texture/atlas.js +++ b/dist/melonjs.mjs/video/texture/atlas.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/texture/cache.js b/dist/melonjs.mjs/video/texture/cache.js index da4f01f205..7a2049b4c1 100644 --- a/dist/melonjs.mjs/video/texture/cache.js +++ b/dist/melonjs.mjs/video/texture/cache.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/texture/canvas_texture.js b/dist/melonjs.mjs/video/texture/canvas_texture.js index 9c6bf36a7f..659976a2d3 100644 --- a/dist/melonjs.mjs/video/texture/canvas_texture.js +++ b/dist/melonjs.mjs/video/texture/canvas_texture.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/utils/autodetect.js b/dist/melonjs.mjs/video/utils/autodetect.js index a8098c628a..d75d7f9865 100644 --- a/dist/melonjs.mjs/video/utils/autodetect.js +++ b/dist/melonjs.mjs/video/utils/autodetect.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/video.js b/dist/melonjs.mjs/video/video.js index 5db1525e9e..157f891475 100644 --- a/dist/melonjs.mjs/video/video.js +++ b/dist/melonjs.mjs/video/video.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/buffer/vertex.js b/dist/melonjs.mjs/video/webgl/buffer/vertex.js index c187617573..dd23d53af5 100644 --- a/dist/melonjs.mjs/video/webgl/buffer/vertex.js +++ b/dist/melonjs.mjs/video/webgl/buffer/vertex.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/compositors/compositor.js b/dist/melonjs.mjs/video/webgl/compositors/compositor.js index 852d99cd2a..573546d277 100644 --- a/dist/melonjs.mjs/video/webgl/compositors/compositor.js +++ b/dist/melonjs.mjs/video/webgl/compositors/compositor.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js b/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js index 69e8681e66..fee9221ebd 100644 --- a/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js +++ b/dist/melonjs.mjs/video/webgl/compositors/primitive_compositor.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js b/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js index 92fe95831a..3e7c199941 100644 --- a/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js +++ b/dist/melonjs.mjs/video/webgl/compositors/quad_compositor.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/glshader.js b/dist/melonjs.mjs/video/webgl/glshader.js index ba147c55e0..1f79d7d25d 100644 --- a/dist/melonjs.mjs/video/webgl/glshader.js +++ b/dist/melonjs.mjs/video/webgl/glshader.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js b/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js index f7a078fb7c..4525e13ce8 100644 --- a/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js +++ b/dist/melonjs.mjs/video/webgl/shaders/primitive.frag.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js b/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js index cad22293bb..9a9f322c67 100644 --- a/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js +++ b/dist/melonjs.mjs/video/webgl/shaders/primitive.vert.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js b/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js index 69c3fb7e8d..5122876ae5 100644 --- a/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js +++ b/dist/melonjs.mjs/video/webgl/shaders/quad.frag.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js b/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js index 45d8ee6953..1654b79a4f 100644 --- a/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js +++ b/dist/melonjs.mjs/video/webgl/shaders/quad.vert.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/utils/attributes.js b/dist/melonjs.mjs/video/webgl/utils/attributes.js index 5162447bc4..a894ad922c 100644 --- a/dist/melonjs.mjs/video/webgl/utils/attributes.js +++ b/dist/melonjs.mjs/video/webgl/utils/attributes.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/utils/precision.js b/dist/melonjs.mjs/video/webgl/utils/precision.js index 928c51c74a..4d04d8a4ce 100644 --- a/dist/melonjs.mjs/video/webgl/utils/precision.js +++ b/dist/melonjs.mjs/video/webgl/utils/precision.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/utils/program.js b/dist/melonjs.mjs/video/webgl/utils/program.js index 90aa2d3b7b..178e9e0290 100644 --- a/dist/melonjs.mjs/video/webgl/utils/program.js +++ b/dist/melonjs.mjs/video/webgl/utils/program.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/utils/string.js b/dist/melonjs.mjs/video/webgl/utils/string.js index fbf8cf943f..2ae3ff4241 100644 --- a/dist/melonjs.mjs/video/webgl/utils/string.js +++ b/dist/melonjs.mjs/video/webgl/utils/string.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/utils/uniforms.js b/dist/melonjs.mjs/video/webgl/utils/uniforms.js index bcf6ce6c36..7f9fe131ff 100644 --- a/dist/melonjs.mjs/video/webgl/utils/uniforms.js +++ b/dist/melonjs.mjs/video/webgl/utils/uniforms.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.mjs/video/webgl/webgl_renderer.js b/dist/melonjs.mjs/video/webgl/webgl_renderer.js index e7d00a7bb8..a3125056e7 100644 --- a/dist/melonjs.mjs/video/webgl/webgl_renderer.js +++ b/dist/melonjs.mjs/video/webgl/webgl_renderer.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license diff --git a/dist/melonjs.module.js b/dist/melonjs.module.js index 11a21a7080..e74ccb8174 100644 --- a/dist/melonjs.module.js +++ b/dist/melonjs.module.js @@ -1,5 +1,5 @@ /*! - * melonJS Game Engine - v15.12.0 + * melonJS Game Engine - v15.13.0 * http://www.melonjs.org * melonjs is licensed under the MIT License. * http://www.opensource.org/licenses/mit-license @@ -205,7 +205,7 @@ var $TypeError$5 = TypeError; // `RequireObjectCoercible` abstract operation // https://tc39.es/ecma262/#sec-requireobjectcoercible var requireObjectCoercible$3 = function (it) { - if (isNullOrUndefined$1(it)) throw $TypeError$5("Can't call method on " + it); + if (isNullOrUndefined$1(it)) throw new $TypeError$5("Can't call method on " + it); return it; }; @@ -393,7 +393,7 @@ var $TypeError$4 = TypeError; // `Assert: IsCallable(argument) is true` var aCallable$1 = function (argument) { if (isCallable$7(argument)) return argument; - throw $TypeError$4(tryToString(argument) + ' is not a function'); + throw new $TypeError$4(tryToString(argument) + ' is not a function'); }; var aCallable$2 = /*@__PURE__*/getDefaultExportFromCjs(aCallable$1); @@ -425,7 +425,7 @@ var ordinaryToPrimitive$1 = function (input, pref) { if (pref === 'string' && isCallable$6(fn = input.toString) && !isObject$4(val = call$2(fn, input))) return val; if (isCallable$6(fn = input.valueOf) && !isObject$4(val = call$2(fn, input))) return val; if (pref !== 'string' && isCallable$6(fn = input.toString) && !isObject$4(val = call$2(fn, input))) return val; - throw $TypeError$3("Can't convert object to primitive value"); + throw new $TypeError$3("Can't convert object to primitive value"); }; var ordinaryToPrimitive$2 = /*@__PURE__*/getDefaultExportFromCjs(ordinaryToPrimitive$1); @@ -473,10 +473,10 @@ var store$2 = sharedStore; (shared$5.exports = function (key, value) { return store$2[key] || (store$2[key] = value !== undefined ? value : {}); })('versions', []).push({ - version: '3.32.2', + version: '3.33.0', mode: IS_PURE ? 'pure' : 'global', copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)', - license: 'https://github.com/zloirock/core-js/blob/v3.32.2/LICENSE', + license: 'https://github.com/zloirock/core-js/blob/v3.33.0/LICENSE', source: 'https://github.com/zloirock/core-js' }); @@ -567,7 +567,7 @@ var toPrimitive$1 = function (input, pref) { if (pref === undefined) pref = 'default'; result = call$1(exoticToPrim, input, pref); if (!isObject$3(result) || isSymbol$1(result)) return result; - throw $TypeError$2("Can't convert object to primitive value"); + throw new $TypeError$2("Can't convert object to primitive value"); } if (pref === undefined) pref = 'number'; return ordinaryToPrimitive(input, pref); @@ -668,7 +668,7 @@ var $TypeError$1 = TypeError; // `Assert: Type(argument) is Object` var anObject$2 = function (argument) { if (isObject$1(argument)) return argument; - throw $TypeError$1($String$2(argument) + ' is not an object'); + throw new $TypeError$1($String$2(argument) + ' is not an object'); }; var anObject$3 = /*@__PURE__*/getDefaultExportFromCjs(anObject$2); @@ -713,7 +713,7 @@ var f$2 = objectDefineProperty.f = DESCRIPTORS$3 ? V8_PROTOTYPE_DEFINE_BUG ? fun if (IE8_DOM_DEFINE) try { return $defineProperty(O, P, Attributes); } catch (error) { /* empty */ } - if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported'); + if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; @@ -823,7 +823,7 @@ var getterFor = function (TYPE) { return function (it) { var state; if (!isObject(it) || (state = get$1(it)).type !== TYPE) { - throw TypeError$1('Incompatible receiver, ' + TYPE + ' required'); + throw new TypeError$1('Incompatible receiver, ' + TYPE + ' required'); } return state; }; }; @@ -836,7 +836,7 @@ if (NATIVE_WEAK_MAP || shared.state) { store.set = store.set; /* eslint-enable no-self-assign -- prototype methods protection */ set = function (it, metadata) { - if (store.has(it)) throw TypeError$1(OBJECT_ALREADY_INITIALIZED); + if (store.has(it)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED); metadata.facade = it; store.set(it, metadata); return metadata; @@ -851,7 +851,7 @@ if (NATIVE_WEAK_MAP || shared.state) { var STATE = sharedKey('state'); hiddenKeys$2[STATE] = true; set = function (it, metadata) { - if (hasOwn$3(it, STATE)) throw TypeError$1(OBJECT_ALREADY_INITIALIZED); + if (hasOwn$3(it, STATE)) throw new TypeError$1(OBJECT_ALREADY_INITIALIZED); metadata.facade = it; createNonEnumerableProperty$1(it, STATE, metadata); return metadata; @@ -1326,7 +1326,7 @@ var classof = classof$1; var $String = String; var toString$2 = function (argument) { - if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string'); + if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string'); return $String(argument); }; @@ -34660,8 +34660,8 @@ class UITextButton extends UIBaseElement { * @param {number} [settings.size=1] - The scale factor of the BitmapText * @param {string} [settings.text] - The text to display * @param {string} [settings.bindKey] - The key to bind the action to (default: none) - * @param {string} [settings.backgroundColor="#00aa0080"] - The css value of a background color - * @param {string} [settings.hoverColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button + * @param {string} [settings.hoverOffColor="#00aa0080"] - The css value of a color to be used if the pointer is not hovering over the button + * @param {string} [settings.hoverOnColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button * @param {string} [settings.borderStrokeColor="#000000"] - The css value of a color to be used to draw the border * @param {string} [settings.fillStyle] - The css value of a tint color to be used to tint the BitmapText * @param {string} [settings.textAlign="center"] - horizontal text alignment @@ -34678,6 +34678,8 @@ class UITextButton extends UIBaseElement { * // if you omit the next two, size is calculated by the size of the text * borderWidth: 200, * borderHeight: 20, + * backgroundColor: '#00aa0080', + * hoverColor: '#00ff00ff' * }); * } * @@ -34698,16 +34700,18 @@ class UITextButton extends UIBaseElement { this.bindKey = settings.bindKey || -1; /** - * The css value of a background color + * The css value of a color to be used if the pointer is nothovering over the button * @type {string} */ - this.backgroundColor = settings.backgroundColor || "#00aa0080"; + // keep settings.backgroundColor for backward compatibility + this.hoverOffColor = settings.hoverOffColor || settings.backgroundColor || "#00aa0080"; /** * The css value of a color to be used if the pointer hovers over the button * @type {string} */ - this.hoverColor = settings.hoverColor || "#00ff00ff"; + // keep settings.hoverColor for backward compatibility + this.hoverOnColor = settings.hoverOnColor || settings.hoverColor || "#00ff00ff"; /** * The css value of a color to be used to draw the border @@ -34762,16 +34766,13 @@ class UITextButton extends UIBaseElement { draw(renderer) { if (this.hover === true) { - renderer.setColor(this.hoverColor); + renderer.setColor(this.hoverOnColor); } else { - renderer.setColor(this.backgroundColor); + renderer.setColor(this.hoverOffColor); } renderer.fill(this.border); renderer.setColor(this.borderStrokeColor); renderer.stroke(this.border); - this.bitmapText.preDraw(renderer); - this.bitmapText.draw(renderer); - this.bitmapText.postDraw(renderer); super.draw(renderer); } } @@ -38353,9 +38354,9 @@ class BasePlugin { * define the minimum required version of melonJS
* this can be overridden by the plugin * @type {string} - * @default "15.12.0" + * @default "15.13.0" */ - this.version = "15.12.0"; + this.version = "15.13.0"; /** * a reference to the app/game that registered this plugin @@ -38637,7 +38638,7 @@ Renderer.prototype.getHeight = function() { * @name version * @type {string} */ -const version = "15.12.0"; +const version = "15.13.0"; /** * a flag indicating that melonJS is fully initialized diff --git a/dist/types/renderable/ui/uitextbutton.d.ts b/dist/types/renderable/ui/uitextbutton.d.ts index aef6b0cb72..3f42a87c5a 100644 --- a/dist/types/renderable/ui/uitextbutton.d.ts +++ b/dist/types/renderable/ui/uitextbutton.d.ts @@ -15,8 +15,8 @@ export default class UITextButton extends UIBaseElement { * @param {number} [settings.size=1] - The scale factor of the BitmapText * @param {string} [settings.text] - The text to display * @param {string} [settings.bindKey] - The key to bind the action to (default: none) - * @param {string} [settings.backgroundColor="#00aa0080"] - The css value of a background color - * @param {string} [settings.hoverColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button + * @param {string} [settings.hoverOffColor="#00aa0080"] - The css value of a color to be used if the pointer is not hovering over the button + * @param {string} [settings.hoverOnColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button * @param {string} [settings.borderStrokeColor="#000000"] - The css value of a color to be used to draw the border * @param {string} [settings.fillStyle] - The css value of a tint color to be used to tint the BitmapText * @param {string} [settings.textAlign="center"] - horizontal text alignment @@ -33,6 +33,8 @@ export default class UITextButton extends UIBaseElement { * // if you omit the next two, size is calculated by the size of the text * borderWidth: 200, * borderHeight: 20, + * backgroundColor: '#00aa0080', + * hoverColor: '#00ff00ff' * }); * } * @@ -49,11 +51,16 @@ export default class UITextButton extends UIBaseElement { * @type {string} */ bindKey: string; + /** + * The css value of a color to be used if the pointer is nothovering over the button + * @type {string} + */ + hoverOffColor: string; /** * The css value of a color to be used if the pointer hovers over the button * @type {string} */ - hoverColor: string; + hoverOnColor: string; /** * The css value of a color to be used to draw the border * @type {string} diff --git a/docs/docs/Class-Index.html b/docs/docs/Class-Index.html index f7d9c2d809..11df27da30 100644 --- a/docs/docs/Class-Index.html +++ b/docs/docs/Class-Index.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/index.html b/docs/docs/index.html index 9debe0112a..7cb924979b 100644 --- a/docs/docs/index.html +++ b/docs/docs/index.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs.api.json b/docs/docs/melonjs.api.json index a53bef4076..41a6fc0499 100644 --- a/docs/docs/melonjs.api.json +++ b/docs/docs/melonjs.api.json @@ -1 +1 @@ -{"version":"1.0.0","metadata":{"linker":"(unsigned)","siteRoot":"melonJS/docs"},"root":{"id":"root-DPnb4SZ0fg8KFu0SNtpEl","name":"","type":"RootDoc","members":[{"id":"-5PG-ef4m_sfcGpmVrmiO","name":"audio","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"qG3Ynj2qS-JiNscDNKrLo","name":"stopOnAudioError","brief":"","defaultValue":"true","type":"PropertyDoc","description":"

Specify either to stop on audio loading error or not
\nif true, melonJS will throw an exception and stop loading
\nif ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x5mFoDzZmcK5TqcoM6aP6","name":"disable","brief":"","scope":"static","type":"FunctionDoc","description":"

disable audio output

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aNi6GU9O79H6bDlG1OXsa","name":"enable","brief":"","scope":"static","see":["audio.disable"],"type":"FunctionDoc","description":"

enable audio output
\nonly useful if audio supported and previously disabled through

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yu9Z-gIiHAw2ioPTvKkaJ","name":"fade","brief":"","scope":"static","type":"FunctionDoc","description":"

Fade a currently playing sound between two volumee.

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"from","optional":false,"description":"

Volume to fade from (0.0 to 1.0).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"to","optional":false,"description":"

Volume to fade to (0.0 to 1.0).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"duration","optional":false,"description":"

Time in milliseconds to fade.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will fade.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CQdc-tOJmKdkBHDYn_tU7","name":"getCurrentTrack","brief":"","scope":"static","type":"FunctionDoc","description":"

returns the current track Id

","params":[],"returns":[{"description":"

audio track name

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"jN03SktoqasxSkydxrvyB","name":"getVolume","brief":"","scope":"static","type":"FunctionDoc","description":"

get the default global volume

","params":[],"returns":[{"description":"

current volume value in Float [0.0 - 1.0] .

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"L4HFTFCIioXEJyc0WpoGm","name":"hasAudio","brief":"","scope":"static","type":"FunctionDoc","description":"

check if audio (HTML5 or WebAudio) is supported

","params":[],"returns":[{"description":"

return true if audio (HTML5 or WebAudio) is supported

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"VzQPqREJiqPsWWCgJmU_l","name":"hasFormat","brief":"","scope":"static","type":"FunctionDoc","description":"

check if the given audio format is supported

","params":[{"identifier":"codec","optional":false,"description":"

the audio format to check for support

","dataType":{"tokens":[{"value":"\"mp3\" | \"mpeg\" | \"opus\" | \"ogg\" | \"oga\" | \"wav\" | \"aac\" | \"caf\" | \"m4a\" | \"m4b\" | \"mp4\" | \"weba\" | \"webm\" | \"dolby\" | \"flac\"","kind":"canonical"},{"value":"\"mp3\"","kind":"canonical"},{"value":"\"mpeg\"","kind":"canonical"},{"value":"\"opus\"","kind":"canonical"},{"value":"\"ogg\"","kind":"canonical"},{"value":"\"oga\"","kind":"canonical"},{"value":"\"wav\"","kind":"canonical"},{"value":"\"aac\"","kind":"canonical"},{"value":"\"caf\"","kind":"canonical"},{"value":"\"m4a\"","kind":"canonical"},{"value":"\"m4b\"","kind":"canonical"},{"value":"\"mp4\"","kind":"canonical"},{"value":"\"weba\"","kind":"canonical"},{"value":"\"webm\"","kind":"canonical"},{"value":"\"dolby\"","kind":"canonical"},{"value":"\"flac\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}}],"returns":[{"description":"

return true if the given audio format is supported

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MOY2Gp7uI4j3y601UQjB_","name":"init","brief":"","examples":[{"caption":"","code":"// initialize the \"sound engine\", giving \"webm\" as default desired audio format, and \"mp3\" as a fallback\nif (!me.audio.init(\"webm,mp3\")) {\n alert(\"Sorry but your browser does not support html 5 audio !\");\n return;\n}"}],"scope":"static","type":"FunctionDoc","description":"

Initialize and configure the audio support.
\nFor a maximum browser coverage the recommendation is to use at least two o...","params":[{"identifier":"format","optional":true,"default":"\"mp3\"","description":"

audio format to prioritize ("mp3"|"mpeg"|"opus"|"ogg"|"oga"|"wav&qu...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

Indicates whether audio initialization was successful

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4oOxb9J5MxXUV_UP763a-","name":"load","brief":"","scope":"static","type":"FunctionDoc","description":"

Load an audio file

","params":[{"identifier":"sound","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}},{"identifier":"onloadcb","optional":true,"description":"

function to be called when the resource is loaded

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"onerrorcb","optional":true,"description":"

function to be called in case of error

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

the amount of asset loaded (always 1 if successfull)

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6ca1YN7WoBx71FkL8MUgl","name":"mute","brief":"","examples":[{"caption":"","code":"// mute the background music\nme.audio.mute(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

mute or unmute the specified sound, but does not pause the playback.

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will mute.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"mute","optional":true,"default":"true","description":"

True to mute and false to unmute

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"3In_CN1XyNIRofz4xj3_9","name":"muteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

mute all audio

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zadumn4dtMyK80M79JrUQ","name":"muted","brief":"","scope":"static","type":"FunctionDoc","description":"

Returns true if audio is muted globally.

","params":[],"returns":[{"description":"

true if audio is muted globally

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rnf5ydDvcud9J4v5ybRG4","name":"pause","brief":"","examples":[{"caption":"","code":"me.audio.pause(\"cling\");"}],"scope":"static","type":"FunctionDoc","description":"

pause the specified sound on all channels
\nthis function does not reset the currentTime property

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will pause.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CStOoHDIOA8rOlcWu3cYg","name":"pauseTrack","brief":"","examples":[{"caption":"","code":"me.audio.pauseTrack();"}],"scope":"static","type":"FunctionDoc","description":"

pause the current audio track

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FvG6DfF4SZEh3L_L512av","name":"play","brief":"","examples":[{"caption":"","code":"// play the \"cling\" audio clip\nme.audio.play(\"cling\");\n// play & repeat the \"engine\" audio clip\nme.audio.play(\"engine\", true);\n// play the \"gameover_sfx\" audio clip and call myFunc when finished\nme.audio.play(\"gameover_sfx\", false, myFunc);\n// play the \"gameover_sfx\" audio clip with a lower volume level\nme.audio.play(\"gameover_sfx\", false, null, 0.5);"}],"scope":"static","type":"FunctionDoc","description":"

play the specified sound

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"loop","optional":true,"default":"false","description":"

loop audio

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"onend","optional":true,"description":"

Function to call when sound instance ends playing.

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"volume","optional":true,"default":"default","description":"

Float specifying volume (0.0 - 1.0 values accepted).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

the sound instance ID.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TOgAdzdsqXolD91zx_24U","name":"playTrack","brief":"","examples":[{"caption":"","code":"me.audio.playTrack(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

play the specified audio track
\nthis function automatically set the loop property to true
\nand keep track of the cur...","params":[{"identifier":"sound_name","optional":false,"description":"

audio track name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"volume","optional":true,"default":"default","description":"

Float specifying volume (0.0 - 1.0 values accepted).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

the sound instance ID.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TycP9iPSOs9SVhiCe5Vuq","name":"rate","brief":"","examples":[{"caption":"","code":"// get the playback rate of the background music\nlet rate = me.audio.rate(\"dst-gameforest\");\n// speed up the playback of the background music\nme.audio.rate(\"dst-gameforest\", 2.0);"}],"scope":"static","type":"FunctionDoc","description":"

get or set the rate of playback for a sound.

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"rate","optional":true,"variadic":true,"description":"

playback rate : 0.5 to 4.0, with 1.0 being normal speed.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will be changed.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

return the current playback rate (if no extra parameters were given)

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0nrVQ0e_PBCeMk503HTrL","name":"resume","brief":"","examples":[{"caption":"","code":"// play a audio clip\nlet id = me.audio.play(\"myClip\");\n...\n// pause it\nme.audio.pause(\"myClip\", id);\n...\n// resume\nme.audio.resume(\"myClip\", id);"}],"scope":"static","type":"FunctionDoc","description":"

resume the specified sound on all channels

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will resume.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uwGg3ecgcDi2O4c1a9fiO","name":"resumeTrack","brief":"","examples":[{"caption":"","code":"// play an awesome music\nme.audio.playTrack(\"awesome_music\");\n// pause the audio track\nme.audio.pauseTrack();\n// resume the music\nme.audio.resumeTrack();"}],"scope":"static","type":"FunctionDoc","description":"

resume the previously paused audio track

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7qvPgFUTHc7OlF80jruaU","name":"seek","brief":"","examples":[{"caption":"","code":"// return the current position of the background music\nlet current_pos = me.audio.seek(\"dst-gameforest\");\n// set back the position of the background music to the beginning\nme.audio.seek(\"dst-gameforest\", 0);"}],"scope":"static","type":"FunctionDoc","description":"

get/set the position of playback for a sound.

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"seek","optional":true,"variadic":true,"description":"

the position to move current playback to (in seconds).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will changed.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

return the current seek position (if no extra parameters were given)

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2IwErxQ6uq2o-1nVWsFo3","name":"setVolume","brief":"","scope":"static","type":"FunctionDoc","description":"

set the default global volume

","params":[{"identifier":"volume","optional":false,"description":"

Float specifying volume (0.0 - 1.0 values accepted).

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KlZ0P3_I5VU_Ovqei994A","name":"stop","brief":"","examples":[{"caption":"","code":"me.audio.stop(\"cling\");"}],"scope":"static","type":"FunctionDoc","description":"

stop the specified sound on all channels

","params":[{"identifier":"sound_name","optional":true,"description":"

audio clip name (case sensitive). If none is passed, all sounds are stopped.

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will stop.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"f4x09VWB0lmNjQx7tyM78","name":"stopTrack","brief":"","examples":[{"caption":"","code":"// play a awesome music\nme.audio.playTrack(\"awesome_music\");\n// stop the current music\nme.audio.stopTrack();"}],"scope":"static","see":["audio.playTrack"],"type":"FunctionDoc","description":"

stop the current audio track

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N38GUuk2YEHssWMHIn7ky","name":"unload","brief":"","examples":[{"caption":"","code":"me.audio.unload(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

unload specified audio track to free memory

","params":[{"identifier":"sound_name","optional":false,"description":"

audio track name - case sensitive

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

true if unloaded

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"GOnTPDulXcI1RqGesMrbB","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.audio.unloadAll();"}],"scope":"static","type":"FunctionDoc","description":"

unload all audio to free memory

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VG10yNcV30uxMJwkqYILB","name":"unmute","brief":"","scope":"static","type":"FunctionDoc","description":"

unmute the specified sound

","params":[{"identifier":"sound_name","optional":false,"description":"

audio clip name

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

the sound instance ID. If none is passed, all sounds in group will unmute.

","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"OYrvd2jCFsajYsMnAJSvf","name":"unmuteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

unmute all audio

","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"2O864asKnjQLbLKDUq-C-","name":"collision","brief":"","type":"NSDoc","description":"

Collision detection (and projection-based collision response) of 2D shapes.
\nBased on the Separating Axis Theorem and s...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"LeeXMejnkLmzOXoKyq_Zl","name":"types","brief":"","examples":[{"caption":"","code":" // set the body collision type\n myEntity.body.collisionType = me.collision.types.PLAYER_OBJECT;\n\n // filter collision detection with collision shapes, enemies and collectables\n myEntity.body.setCollisionMask(\n me.collision.types.WORLD_SHAPE |\n me.collision.types.ENEMY_OBJECT |\n me.collision.types.COLLECTABLE_OBJECT\n );\n\n // User-defined collision types are defined using BITWISE LEFT-SHIFT:\n game.collisionTypes = {\n LOCKED_DOOR : me.collision.types.USER << 0,\n OPEN_DOOR : me.collision.types.USER << 1,\n LOOT : me.collision.types.USER << 2,\n };\n\n // Set collision type for a door entity\n myDoorEntity.body.collisionType = game.collisionTypes.LOCKED_DOOR;\n\n // Set collision mask for the player entity, so it collides with locked doors and loot\n myPlayerEntity.body.setCollisionMask(\n me.collision.types.ENEMY_OBJECT |\n me.collision.types.WORLD_SHAPE |\n game.collisionTypes.LOCKED_DOOR |\n game.collisionTypes.LOOT\n );"}],"readonly":true,"scope":"static","see":["Body.setCollisionMask","Body.collisionType"],"type":"EnumDoc","description":"

Enum for collision type values.

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Wf2vlaqpwa5IK4wZ05PbY","name":"ACTION_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

e.g. doors

"},{"id":"1QwaubUpwQdaQ0gyeeSx5","name":"ALL_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

all of the above (including user-defined types)

"},{"id":"K2XEK-bvTMJ6kpAXBHiot","name":"COLLECTABLE_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

collectable objects

"},{"id":"fi2NOAqP-syADhAd_F_0z","name":"ENEMY_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

enemies objects

"},{"id":"QDPyDkDR-oJySg_M_NAoH","name":"NO_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

to disable collision check

"},{"id":"ly7CVQMVbMHK6TBjHoaI8","name":"NO_OBJECT","brief":"

to disable collision check

","defaultValue":"0","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3tmEDCxVGuf4CAYecB5Vd","name":"NPC_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

non playable characters

"},{"id":"IQw-JDhnfubKQS71qxwXw","name":"PLAYER_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

playbable characters

"},{"id":"UyBomKBWuL0mgG88R-Wg6","name":"PROJECTILE_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

e.g. missiles

"},{"id":"n4Nz6gNfuUBGuRPVs0o_L","name":"USER","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

user-defined collision types (see example)

"},{"id":"Mq2--N1kGH1on_PKoREbh","name":"WORLD_SHAPE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

e.g. walls; for map collision shapes

"}]},{"id":"rXExQSTLefx50pW7qRO-J","name":"maxChildren","brief":"","access":"public","defaultValue":"8","scope":"static","see":["game.world.broadphase"],"type":"PropertyDoc","description":"

The maximum number of children that a quadtree node can contain before it is split into sub-nodes.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iz-xC0kGDR9iEqHgOOKte","name":"maxDepth","brief":"","access":"public","defaultValue":"4","scope":"static","see":["game.world.broadphase"],"type":"PropertyDoc","description":"

The maximum number of levels that the quadtree will create.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QTZhyGZDEDC5jEMZiaa1i","name":"rayCast","brief":"","access":"public","examples":[{"caption":"","code":" // define a line accross the viewport\n let ray = new me.Line(\n // absolute position of the line\n 0, 0, [\n // starting point relative to the initial position\n new me.Vector2d(0, 0),\n // ending point\n new me.Vector2d(me.game.viewport.width, me.game.viewport.height)\n ]);\n\n // check for collition\n result = me.collision.rayCast(ray);\n\n if (result.length > 0) {\n // ...\n }"}],"scope":"instance","type":"MethodDoc","description":"

Checks for object colliding with the given line

","params":[{"identifier":"line","optional":false,"description":"

line to be tested for collision

","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}},{"identifier":"result","optional":true,"description":"

a user defined array that will be populated with intersecting physic objects.

","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

an array of intersecting physic objects

","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]}]},{"id":"kIcRkMrRTB8DEePGe6Kfp","name":"device","brief":"","defaultValue":"false","type":"NSDoc","description":"

device type and capabilities

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"MgnEcV4jHfblF0Fsa4jaj","name":"platform","brief":"","readonly":true,"type":"NSDoc","description":"

The device platform type

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"sLb-RYIUh24GBlA0NU5aa","name":"android","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is an Android platform

"},{"id":"RMKmKBEzj6jBprPTi1khP","name":"android2","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is an Android 2.x platform

"},{"id":"XcyN1orMl3dGibchOM3sO","name":"BlackBerry","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is a BlackBerry platform

"},{"id":"oA5jsHuv-AgQ4WT4qYCMV","name":"chromeOS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is running on ChromeOS.

"},{"id":"oRNO0kL3Xxjom94um7nsL","name":"ejecta","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if running under Ejecta

"},{"id":"iFEa6W0q5VE-O_GOWBUxP","name":"iOS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is an iOS platform

"},{"id":"REK0sjwRapNW6JDnEtmQS","name":"isMobile","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if a mobile device

"},{"id":"PzcyhAnjdF5fDEVBiuEgm","name":"isWeixin","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if running under Wechat

"},{"id":"EJIN2msYIhjEd7TSq8fU_","name":"Kindle","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is a Kindle platform

"},{"id":"AEJ66dLkiEQV_8E2nAYkv","name":"linux","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is a Linux platform

"},{"id":"sR6bzjlGPCIAiIuy49bMX","name":"nodeJS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if running under node.js

"},{"id":"8l-c-5APCUyiClrq4saB6","name":"ua","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

the user agent string for the current device

"},{"id":"Twor9CQvopKAbldPpg0mg","name":"wp","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

true if the device is a Windows Phone platform

"}]},{"id":"H16E4zAsndg5JaIy4PboB","name":"accelerationX","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

contains the g-force acceleration along the x-axis.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2nvyd2wvDAm_-VgtDJHIh","name":"accelerationY","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

contains the g-force acceleration along the y-axis.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"glWrEaItTj7DdroMsm-JC","name":"accelerationZ","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

contains the g-force acceleration along the z-axis.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o7tXlazNcsdk7S7u_B-j-","name":"alpha","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

Device orientation Alpha property. Gives angle based on the rotation of the phone around its z axis.\nThe z-axis is perpend...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JpfL0TDpiolPo13m-Qydz","name":"autoFocus","brief":"","access":"public","defaultValue":"true","type":"PropertyDoc","description":"

Specify whether to automatically bring the window to the front

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R0wJjObq1fzygNV7otRJC","name":"beta","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

Device orientation Beta property. Gives angle on tilting a portrait held phone forward or backward

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SmiSJHbpgYUF-qROZV-fu","name":"devicePixelRatio","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Ratio of the resolution in physical pixels to the resolution in CSS pixels for the current display device.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VKp6KTskYaY9Q_XnVbXN5","name":"gamma","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

Device orientation Gamma property. Gives angle on tilting a portrait held phone left or right

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9kdUizZqU1aWEJgKNOTNs","name":"hasAccelerometer","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

Browser accelerometer capabilities

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pDRXpRucKCWfxsEeoXYuV","name":"hasDeviceOrientation","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

Browser device orientation

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZhLkqdYTybNeU6QVeyDae","name":"hasFullscreenSupport","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Browser full screen support

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5sUbjCJ9fuEOw4cEoZq8e","name":"hasHTML5Audio","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Device HTML5Audio Support

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AuC0inpaEEBiWaG3K1IY5","name":"hasPointerLockSupport","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Browser pointerlock api support

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HtPXJtz72f9bNr_TDjOe9","name":"hasWebAudio","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

Device WebAudio Support

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9dyzAra0PSC_-gwCB_sOt","name":"isMobile","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

equals to true if a mobile device.\n(Android | iPhone | iPad | iPod | BlackBerry | Windows Phone | Kindle)

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"izNYos6SDW2Xf7KpzvvPB","name":"language","brief":"","access":"public","readonly":true,"see":["http://www.w3schools.com/tags/ref_language_codes.asp"],"type":"PropertyDoc","description":"

a string representing the preferred language of the user, usually the language of the browser UI.\n(will default to "e...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pZvZQGTBALNM_-8ztCL5j","name":"localStorage","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Browser Local Storage capabilities
\n(this flag will be set to false if cookies are blocked)

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iAvBiIJX5dKlfM8BjGK9d","name":"maxTouchPoints","brief":"","access":"public","examples":[{"caption":"","code":"if (me.device.maxTouchPoints > 1) {\n // device supports multi-touch\n}"}],"readonly":true,"type":"PropertyDoc","description":"

the maximum number of simultaneous touch contact points are supported by the current device.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QKtsfe4eFH1aoE_oojfqp","name":"nativeBase64","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Browser Base64 decoding capability

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gAEFod4Cnm00PFC8Lk8wI","name":"offscreenCanvas","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

equals to true if the device browser supports OffScreenCanvas.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BbKdmb8fChjUK0UbN3VQ5","name":"pauseOnBlur","brief":"","access":"public","defaultValue":"true","deprecated":"since 15.4.0","see":["Application.pauseOnBlur"],"type":"PropertyDoc","description":"

Specify whether to pause the game when losing focus

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fuTE6ZDcNuqwnXNUzuou0","name":"platform","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

the device platform type

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h8c-DIfXgDU8eN5rozxc1","name":"pointerEvent","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

True if the browser supports Pointer Events

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vs8PhmAdRMiyVzijsCLKQ","name":"resumeOnFocus","brief":"","access":"public","defaultValue":"true","deprecated":"since 15.4.0","see":["Application.resumeOnFocus"],"type":"PropertyDoc","description":"

Specify whether to unpause the game when gaining focus

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l3E-CBAr5LFLLzfQp0TCE","name":"screenOrientation","brief":"","access":"public","readonly":true,"see":["https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation/onchange"],"type":"PropertyDoc","description":"

Supports the ScreenOrientation API

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mj4gODkN2l10GfnTd9_zc","name":"sound","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Returns true if the browser/device has audio capabilities.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zxSV-1qdoXSgaiJE0Opq2","name":"stopOnBlur","brief":"","access":"public","defaultValue":"false","deprecated":"since 15.4.0","see":["Application.stopOnBlur"],"type":"PropertyDoc","description":"

Specify whether to stop the game when losing focus or not.\nThe engine restarts on focus if this is enabled.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8lqVWrSqC97WnRh4krKgP","name":"touch","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

Touch capabilities (support either Touch or Pointer events)

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dj5rGuwDXKz8AmgCcaE39","name":"touchEvent","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

True if the browser supports Touch Events

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SthpEteJWMlHbcwAPPP6G","name":"wheel","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

W3C standard wheel events

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b3Mdhk_nakACLAP7fpdvX","name":"enableSwipe","brief":"","access":"public","type":"FunctionDoc","description":"

enable/disable swipe on WebView.

","params":[{"identifier":"enable","optional":true,"default":"true","description":"

enable or disable swipe.

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"EO6qaDrQeio38-Ao6CxmX","name":"exitFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

Exit fullscreen mode. Requires fullscreen support from the browser/device.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aN8rH8tNrLbJRfcRQIdbh","name":"focus","brief":"","access":"public","examples":[{"caption":"","code":"if (clicked) {\n me.device.focus();\n}"}],"type":"FunctionDoc","description":"

Makes a request to bring this device window to the front.

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JZR-jZzHIuaHQdYNVi4t-","name":"getElement","brief":"","access":"public","type":"FunctionDoc","description":"

return the DOM element for the given element name or HTMLElement object

","params":[{"identifier":"element","optional":false,"description":"

the parent element name or a HTMLElement object

","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

the corresponding DOM Element or null if not existing

","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QbNH-ruNj6zkTWli76QPP","name":"getElementBounds","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/DOMRect"],"type":"FunctionDoc","description":"

returns the size of the given HTMLElement and its position relative to the viewport\n
an HTMLElement object

","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

the size and position of the element relatively to the viewport

","dataType":{"tokens":[{"value":"DOMRect","kind":"canonical"},{"value":"DOMRect","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MPvBKZxRx5QP593grG6Aq","name":"getParentBounds","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/DOMRect"],"type":"FunctionDoc","description":"

returns the size of the given HTMLElement Parent and its position relative to the viewport\n
an HTMLElement object

","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

the size and position of the given element parent relative to the viewport

","dataType":{"tokens":[{"value":"DOMRect","kind":"canonical"},{"value":"DOMRect","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PoAVauPRFZEr4XeBj95AL","name":"getParentElement","brief":"","access":"public","type":"FunctionDoc","description":"

return the parent DOM element for the given parent name or HTMLElement object

","params":[{"identifier":"element","optional":false,"description":"

the parent element name or a HTMLElement object

","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

the parent Element

","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-asSFJ6_qx--ZN1OZ6F9U","name":"getScreenOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/orientation"],"type":"FunctionDoc","description":"

Return a string representing the orientation of the device screen.\nIt can be "any", "natural", "l...","params":[],"returns":[{"description":"

the screen orientation

","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"deS6DAXFNYAiYAMzKia9Y","name":"getStorage","brief":"","access":"public","see":["save"],"type":"FunctionDoc","description":"

return the device storage

","params":[{"identifier":"type","optional":true,"default":"\"local\"","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

a reference to the device storage

","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"IYOBjjiRt-fOQuPTAjWLn","name":"isFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

Returns true if the browser/device is in full screen mode.

","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MJVjmBEX4V3O1a2dZR8jZ","name":"isLandscape","brief":"","access":"public","type":"FunctionDoc","description":"

return true if the device screen orientation is in Portrait mode

","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AZcteZIcQfw3D-jBpOL7d","name":"isPortrait","brief":"","access":"public","type":"FunctionDoc","description":"

return true if the device screen orientation is in Portrait mode

","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QFJQDgWw5rnGPGIWx1GZ2","name":"isWebGLSupported","brief":"","access":"public","type":"FunctionDoc","description":"

returns true if the device supports WebGL

","params":[{"identifier":"options","optional":true,"description":"

context creation options

","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.failIfMajorPerformanceCaveat","optional":true,"default":"true","description":"

If true, the renderer will switch to CANVAS mode if the performances of a WebGL context would be dramatically lower than t...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

true if WebGL is supported

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-OqPH9EsJzKuxmd0eY_FI","name":"lockOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation"],"type":"FunctionDoc","description":"

locks the device screen into the specified orientation.
\nThis method only works for installed Web apps or for Web pages...","params":[{"identifier":"orientation","optional":false,"description":"

The orientation into which to lock the screen.

","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

true if the orientation was unsuccessfully locked

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JidIrj4_YBsXkCi_wWM_P","name":"onReady","brief":"","access":"public","examples":[{"caption":"","code":" // small game skeleton\n let game = {\n // called by the me.device.onReady function\n onload = function () {\n // init video\n if (!me.video.init('screen', 640, 480, true)) {\n alert(\"Sorry but your browser does not support html 5 canvas.\");\n return;\n }\n\n // initialize the \"audio\"\n me.audio.init(\"mp3,ogg\");\n\n // set callback for ressources loaded event\n me.loader.onload = this.loaded.bind(this);\n\n // set all ressources to be loaded\n me.loader.preload(game.assets);\n\n // load everything & display a loading screen\n me.state.change(me.state.LOADING);\n };\n\n // callback when everything is loaded\n loaded = function () {\n // define stuff\n // ....\n\n // change to the menu screen\n me.state.change(me.state.PLAY);\n }\n }; // game\n\n // \"bootstrap\"\n me.device.onReady(function () {\n game.onload();\n });"}],"type":"FunctionDoc","description":"

specify a function to execute when the Device is fully loaded and ready

","params":[{"identifier":"fn","optional":false,"description":"

the function to be executed

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"ihQOq_Tggx_m6yZtBL0BD","name":"requestFullscreen","brief":"","access":"public","examples":[{"caption":"","code":"// add a keyboard shortcut to toggle Fullscreen mode on/off\nme.input.bindKey(me.input.KEY.F, \"toggleFullscreen\");\nme.event.on(me.event.KEYDOWN, function (action, keyCode, edge) {\n // toggle fullscreen on/off\n if (action === \"toggleFullscreen\") {\n me.device.requestFullscreen();\n } else {\n me.device.exitFullscreen();\n }\n});"}],"type":"FunctionDoc","description":"

Triggers a fullscreen request. Requires fullscreen support from the browser/device.

","params":[{"identifier":"element","optional":true,"description":"

the element to be set in full-screen mode.

","dataType":{"tokens":[{"value":"Element","kind":"canonical"},{"value":"Element","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Vvz4mPcmqX0ZbGrIKjlzY","name":"unlockOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation"],"type":"FunctionDoc","description":"

unlocks the device screen into the specified orientation.
\nThis method only works for installed Web apps or for Web pag...","params":[],"returns":[{"description":"

true if the orientation was unsuccessfully unlocked

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4PwQ6qBGP57lZVMHZuypL","name":"unwatchAccelerometer","brief":"","access":"public","type":"FunctionDoc","description":"

unwatch Accelerometor event

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q6ndmK1EJb1-nxYZoNxcD","name":"unwatchDeviceOrientation","brief":"","access":"public","type":"FunctionDoc","description":"

unwatch Device orientation event

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_DAAGwlaQpmDf2IuReYYM","name":"vibrate","brief":"","access":"public","examples":[{"caption":"","code":"// vibrate for 1000 ms\nme.device.vibrate(1000);\n// or alternatively\nme.device.vibrate([1000]);\n// vibrate for 50 ms, be still for 100 ms, and then vibrate for 150 ms:\nme.device.vibrate([50, 100, 150]);\n// cancel any existing vibrations\nme.device.vibrate(0);"}],"type":"FunctionDoc","description":"

the vibrate method pulses the vibration hardware on the device,
\nIf the device doesn't support vibration, this method ...","params":[{"identifier":"pattern","optional":false,"description":"

pattern of vibration and pause intervals

","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | %3<%2>"}}],"returns":[],"extends":[],"implements":[]},{"id":"8p-U1FP6O0Wvw-mZPUM75","name":"watchAccelerometer","brief":"","access":"public","examples":[{"caption":"","code":"// try to enable device accelerometer event on user gesture\nme.input.registerPointerEvent(\"pointerleave\", me.game.viewport, function() {\n if (me.device.watchAccelerometer() === true) {\n // Success\n me.input.releasePointerEvent(\"pointerleave\", me.game.viewport);\n } else {\n // ... fail at enabling the device accelerometer event\n }\n});"}],"see":["device.accelerationX","device.accelerationY","device.accelerationZ"],"type":"FunctionDoc","description":"

Enable monitor of the device accelerator to detect the amount of physical force of acceleration the device is receiving.\n(...","params":[],"returns":[{"description":"

false if not supported or permission not granted by the user

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"EK3x2ddu3fPD2NgZefRLr","name":"watchDeviceOrientation","brief":"","access":"public","examples":[{"caption":"","code":"// try to enable device orientation event on user gesture\nme.input.registerPointerEvent(\"pointerleave\", me.game.viewport, function() {\n if (me.device.watchDeviceOrientation() === true) {\n // Success\n me.input.releasePointerEvent(\"pointerleave\", me.game.viewport);\n } else {\n // ... fail at enabling the device orientation event\n }\n});"}],"see":["device.alpha","device.beta","device.gamma"],"type":"FunctionDoc","description":"

Enable monitor of the device orientation to detect the current orientation of the device as compared to the Earth coordina...","params":[],"returns":[{"description":"

false if not supported or permission not granted by the user

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"9REz93WMxNgkDKUriaU6v","name":"event","brief":"","type":"NSDoc","description":"

an event system based on nodeJS EventEmitter interface

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"fAo-9HpQDPlHIqgUhDk8t","name":"BLUR","brief":"","access":"public","defaultValue":"\"me.blur\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event generated when the main browser or window is losing focus

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qsSmFiiGR-M2xxq6e4KTx","name":"BOOT","brief":"","access":"public","defaultValue":"\"me.boot\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event when the system is booting

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IdQ29eSCreTdk8ZXnv2ew","name":"CANVAS_ONRESIZE","brief":"","access":"public","defaultValue":"\"canvas.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the canvas is resized
\n(this usually follows a WINDOW_ONRESIZE event).
\nData passed : {number} canva...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MJhcayepkJhYTxo4_j8D8","name":"DOM_READY","brief":"","access":"public","defaultValue":"\"dom_ready\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event when the DOM is Ready is booting

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3B2UGyrO7FcTJyuEs8Dyl","name":"DRAGEND","brief":"","access":"public","defaultValue":"\"me.game.dragend\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for dragend events on a Draggable entity
\nData passed:\n{object} the drag event
\n{object} the Draggable entit...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1H3_FZNbvoZBKDQbSVI4L","name":"DRAGSTART","brief":"","access":"public","defaultValue":"\"me.game.dragstart\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for dragstart events on a Draggable entity
\nData passed:\n{object} the drag event
\n{object} the Draggable ent...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l5q9fZZmha9G3NElFq-gw","name":"FOCUS","brief":"","access":"public","defaultValue":"\"me.focus\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event generated when the main browser or window is gaining back focus

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z5OmTa2E2xsqCWzaZfGEz","name":"GAME_AFTER_DRAW","brief":"","access":"public","defaultValue":"\"me.game.afterDraw\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for the start of the draw loop\nData passed : {number} time the current time stamp

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nL14WpEDRoEMxLfvvSkCf","name":"GAME_AFTER_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.afterUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for the end of the update loop\nData passed : {number} time the current time stamp

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N2FgFwc7Kx6Qxt6OOi2ja","name":"GAME_BEFORE_DRAW","brief":"","access":"public","defaultValue":"\"me.game.beforeDraw\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for the end of the draw loop\nData passed : {number} time the current time stamp

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R4KVa95tJBAIDMxGrYZ9X","name":"GAME_BEFORE_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.beforeUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the engine is about to start a new game loop\nData passed : {number} time the current time stamp

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"18zZYw08ME5axfaBlHAij","name":"GAME_INIT","brief":"","access":"public","defaultValue":"\"me.game.onInit\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the game manager is initialized
\nData passed : none

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rcyDHmP0aglIhGuFxZ2XF","name":"GAME_RESET","brief":"","access":"public","defaultValue":"\"me.game.onReset\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the game manager is resetted
\nData passed : none

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o3IoxfVjhYxTg1c_dA4ru","name":"GAME_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.onUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the game is updated (will be impacted by frame skip, frame interpolation and pause/resume state)
\nData ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ULfGcAF8PBId6LgPic0V-","name":"GAMEPAD_CONNECTED","brief":"","access":"public","defaultValue":"\"gamepad.connected\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when a gamepad is connected
\nData passed : {object} gamepad object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SXpkNJoH_nCFK-idyRsau","name":"GAMEPAD_DISCONNECTED","brief":"","access":"public","defaultValue":"\"gamepad.disconnected\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when a gamepad is disconnected
\nData passed : {object} gamepad object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8HcsUxL1U1HDbbWpn5ZGJ","name":"GAMEPAD_UPDATE","brief":"","access":"public","defaultValue":"\"gamepad.update\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when gamepad button/axis state is updated
\nData passed : {number} index
\nData passed : {string} type : &...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e7Xgq3KV7q4fl8N90nyeF","name":"KEYDOWN","brief":"","access":"public","defaultValue":"\"me.input.keydown\"","examples":[{"caption":"","code":" me.input.bindKey(me.input.KEY.X, \"jump\", true); // Edge-triggered\n me.input.bindKey(me.input.KEY.Z, \"shoot\"); // Level-triggered\n me.event.on(me.event.KEYDOWN, (action, keyCode, edge) => {\n // Checking bound keys\n if (action === \"jump\") {\n if (edge) {\n this.doJump();\n }\n\n // Make character fall slower when holding the jump key\n this.vel.y = this.body.gravity;\n }\n });"}],"readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for pressing a binded key
\nData passed : {string} user-defined action, {number} keyCode,\n{boolean} edge state {\n // Checking unbound keys\n if (keyCode == me.input.KEY.ESC) {\n if (me.state.isPaused()) {\n me.state.resume();\n }\n else {\n me.state.pause();\n }\n }\n});"}],"readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for releasing a binded key
\nData passed : {string} user-defined action, {number} keyCode

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HGdjsG1zhu13tbPJt0irY","name":"LEVEL_LOADED","brief":"","access":"public","defaultValue":"\"me.game.onLevelLoaded\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when a level is loaded
\nData passed : {string} Level Name

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DP7rReiZmQzPclsf-e6NI","name":"LOADER_COMPLETE","brief":"","access":"public","defaultValue":"\"me.loader.onload\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when everything has loaded
\nData passed : none

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zy5oT1lxKX8aOInHJdOZ-","name":"LOADER_PROGRESS","brief":"","access":"public","defaultValue":"\"me.loader.onProgress\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for displaying a load progress indicator
\nData passed : {number} [0 .. 1], {Resource} resource object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"syJh79zsEAwvK0FI-hXqN","name":"ONCONTEXT_RESTORED","brief":"","access":"public","defaultValue":"\"renderer.contextrestored\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the current context is restored
\nData passed : {me.Renderer} the current renderer instance`

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t5jy9d2da00LP3cu_T0Bw","name":"POINTERLOCKCHANGE","brief":"","access":"public","defaultValue":"\"me.event.pointerlockChange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for onPointerLockChange event
\nData passed : {boolean} pointer lock status (true/false)

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u9r9k8vb5z_ut8vbIjTDG","name":"POINTERMOVE","brief":"","access":"public","defaultValue":"\"me.event.pointermove\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for pointermove events on the screen area
\nData passed : {me.Pointer} a Pointer object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8QA3hHw4YzWNqKvOY_WKb","name":"STAGE_RESET","brief":"","access":"public","defaultValue":"\"me.stage.onReset\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when a stage is resetted

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BN0BJTwxzOKSBUWBp1Uy1","name":"STATE_CHANGE","brief":"","access":"public","defaultValue":"\"me.state.onChange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the changing to a different stage

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SyYX1-H9OobMulVJ1H7Mn","name":"STATE_PAUSE","brief":"","access":"public","defaultValue":"\"me.state.onPause\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event when the game is paused
\nData passed : none

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RRRk8vGJroAE81d8tIPmK","name":"STATE_RESTART","brief":"","access":"public","defaultValue":"\"me.state.onRestart\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the game is restarted
\nData passed : {number} time in ms the game was stopped

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IxkFF_iQGL__O5aFKH54J","name":"STATE_RESUME","brief":"","access":"public","defaultValue":"\"me.state.onResume\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event for when the game is resumed
\nData passed : {number} time in ms the game was paused

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gBgVmLvfxnmviZNh54mu2","name":"STATE_STOP","brief":"","access":"public","defaultValue":"\"me.state.onStop\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event when the game is stopped
\nData passed : none

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uPYNyPItP2aDo6O8eWMoe","name":"TICK","brief":"","access":"public","defaultValue":"\"me.tick\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

event generated when the system update the engine and the renderer by one step

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-fem3Z65e3-cSdphxNSBM","name":"VIDEO_INIT","brief":"","access":"public","defaultValue":"\"me.video.onInit\"","readonly":true,"see":["video.init","event.on"],"type":"PropertyDoc","description":"

event for when the video is initialized
\nData passed : {Renderer} the renderer instance created

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TvBMbQMcU47nP4OTd419M","name":"VIEWPORT_ONCHANGE","brief":"","access":"public","defaultValue":"\"viewport.onchange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the viewport position is updated
\nData passed : {me.Vector2d} viewport position vector

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FOwvAl8VuqmYGFDIxTc7Z","name":"VIEWPORT_ONRESIZE","brief":"","access":"public","defaultValue":"\"viewport.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the viewport is resized
\n(this usually follows a WINDOW_ONRESIZE event, when using the flexEvent for when the current context is lost
\nData passed : {me.Renderer} the current renderer instance

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9txsBT1ueENYs5AbVABJz","name":"WINDOW_ONORIENTATION_CHANGE","brief":"","access":"public","defaultValue":"\"globalThis.orientationchange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the device is rotated
\nData passed : {Event} Event object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3cgYeaQEnNzB5oD4RUiB9","name":"WINDOW_ONRESIZE","brief":"","access":"public","defaultValue":"\"globalThis.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the (browser) window is resized
\nData passed : {Event} Event object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yn7JnvdHrDtc5vcsJNxEf","name":"WINDOW_ONSCROLL","brief":"","access":"public","defaultValue":"\"globalThis.onscroll\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the (browser) window is scrolled
\nData passed : {Event} Event object

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zjYPl3gK51Jm_GFrrds4V","name":"WORLD_STEP","brief":"","access":"public","defaultValue":"\"me.world.step\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

Event for when the physic world is updated\nData passed : {number} time the current time stamp

","params":[],"returns":[],"extends":[],"implements":[]},{"id":"32LajTx86_GH51RYVEj5B","name":"emit","brief":"","examples":[{"caption":"","code":"me.event.emit(\"event-name\", a, b, c);"}],"scope":"static","type":"FunctionDoc","description":"

calls each of the listeners registered for a given event.

","params":[{"identifier":"eventName","optional":false,"description":"

The event name.

","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

arguments to be passed to all listeners

","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

true if the event had listeners, false otherwise.

","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DOqoYToyFxzFaycxulv8f","name":"off","brief":"","access":"public","examples":[{"caption":"","code":"me.event.off(\"event-name\", myFunction);"}],"scope":"static","type":"FunctionDoc","description":"

remove the given listener for a given event.

","params":[{"identifier":"eventName","optional":false,"description":"

The event name.

","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

The listener function.

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

this.

","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FW-WeW1CJoducigIcpgUq","name":"on","brief":"","access":"public","examples":[{"caption":"","code":"me.event.on(\"event-name\", myFunction, this);"}],"scope":"static","type":"FunctionDoc","description":"

Add a listener for a given event.

","params":[{"identifier":"eventName","optional":false,"description":"

The event name.

","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

The listener function.

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"context","optional":true,"default":"this","description":"

The context to invoke the listener with.

","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

this.

","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XpKoxUZNmya9oXisZa37c","name":"once","brief":"","access":"public","examples":[{"caption":"","code":"me.event.once(\"event-name\", myFunction, this);"}],"scope":"static","type":"FunctionDoc","description":"

Add a one-time listener for a given event.

","params":[{"identifier":"eventName","optional":false,"description":"

The event name.

","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

The listener function.

","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"context","optional":true,"default":"this","description":"

The context to invoke the listener with.

","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

this.

","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"27zlRJqRhNdt30nYzOVTG","name":"game","brief":"","readonly":true,"see":["Application"],"type":"NSDoc","description":"

game is a default instance of a melonJS Application and represents your current game,\nit contains all the objects, tilemap...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hQQJakf0pjluUvC9MNuwb","name":"input","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"_P339HXD9PZxveU0_daLc","name":"GAMEPAD","brief":"","access":"public","type":"NSDoc","description":"

Namespace for standard gamepad mapping constants

","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Kur_TWmAlSMyoGwaY8WXA","name":"AXES","brief":"","access":"public","scope":"static","see":["https://w3c.github.io/gamepad/#remapping"],"type":"EnumDoc","description":"

Standard gamepad mapping information for axes

\n
    \n
  • Left control stick: LX (horizontal), Standard gamepad mapping information for buttons

    \n
      \n
    • Face buttons: FACE_1, FACE_2standard keyboard constants

      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"edp1XkFJNHGkomG8Gc-bJ","name":"A","brief":"","defaultValue":"65","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e1lZ0lY8TkY60-rd347sL","name":"ADD","brief":"","defaultValue":"107","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VRCeRjF7inGwHGspmFUFO","name":"ALT","brief":"","defaultValue":"18","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u4oly_ZmShONp3P2f5KS9","name":"B","brief":"","defaultValue":"66","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kphzkhUT89mNTbMrXAEjs","name":"BACK_SLASH","brief":"","defaultValue":"220","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H8ee1545QPNx7XzpFqDFf","name":"C","brief":"","defaultValue":"67","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JRUv4SJhrLMFL1wMFF2s2","name":"CAPS_LOCK","brief":"","defaultValue":"20","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WPfhmG6LCBXcdrR2Q0AR_","name":"CLOSE_BRACKET","brief":"","defaultValue":"221","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d6g2HLtM3COYzpMhxFedG","name":"COMMA","brief":"","defaultValue":"188","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JbpTs0SNLGyFCMpwdwsDG","name":"CTRL","brief":"","defaultValue":"17","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qy32gN3Y1Ef4tLrWGdlD9","name":"D","brief":"","defaultValue":"68","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QUogL1ZYiE7qMjG3xRrgn","name":"DECIMAL","brief":"","defaultValue":"110","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oDmjUkAQDctwY89m6Vv8L","name":"DELETE","brief":"","defaultValue":"46","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ro3p50X5OmocKoauWvwIs","name":"DIVIDE","brief":"","defaultValue":"111","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jZSKgMzkAZenG-_WfPOMm","name":"DOWN","brief":"","defaultValue":"40","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VRbp5iog3U9Fzh8YhlInP","name":"E","brief":"","defaultValue":"69","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m8uhY8oLcPoraWfwQe87p","name":"END","brief":"","defaultValue":"35","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F0T6G3_1E85fiuqMN2Xk3","name":"ENTER","brief":"","defaultValue":"13","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1CbNkgflH5P18ndPp9LPt","name":"ESC","brief":"","defaultValue":"27","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2e_WlPFXBC7SX1KelhCEo","name":"F","brief":"","defaultValue":"70","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BB6az2MG_2rW_-8gX_fsF","name":"F1","brief":"","defaultValue":"112","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0azb8VV3__3FH5JfEP-CA","name":"F10","brief":"","defaultValue":"121","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2KVC2t9WgDHTE4uYUDRFe","name":"F11","brief":"","defaultValue":"122","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fG-VggJ3wEr-KCaX4XpCC","name":"F12","brief":"","defaultValue":"123","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ybmTbxegIxJ2kxQPbmCLf","name":"F2","brief":"","defaultValue":"113","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z-_QDHJ3pVBQCJkJWq-dl","name":"F3","brief":"","defaultValue":"114","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UrSv_kONwCYUoruIw2Md8","name":"F4","brief":"","defaultValue":"115","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kBdmYO8crqul6unOXAJ5z","name":"F5","brief":"","defaultValue":"116","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2l3il4dvAI4xPX4iJSGni","name":"F6","brief":"","defaultValue":"117","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TpYT1NtWn5aJ7jOUYDr_s","name":"F7","brief":"","defaultValue":"118","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M58Reqi_KHN6cNPCoPJCr","name":"F8","brief":"","defaultValue":"119","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rKPd4Q6-DCEFccVfiZCXF","name":"F9","brief":"","defaultValue":"120","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VgykIEEz68CH2mSHgL3Zi","name":"FORWAND_SLASH","brief":"","defaultValue":"191","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RjgEGn2gfaGBQkD45KjdF","name":"G","brief":"","defaultValue":"71","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PbLQxyLuOl4i1SUpOnbhI","name":"GRAVE_ACCENT","brief":"","defaultValue":"192","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cbxn1-inkS1Jos_pdi0En","name":"H","brief":"","defaultValue":"72","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gqM_bidhKYJCXpJ9VSGTs","name":"HOME","brief":"","defaultValue":"36","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pGtgUxWn5bgd2d4jagJ0H","name":"I","brief":"","defaultValue":"73","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_LAODMx2lbJAI-5blmrwF","name":"INSERT","brief":"","defaultValue":"45","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lg5Tv1DKHa63Xl2naxAgI","name":"J","brief":"","defaultValue":"74","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0VhCwSxnogyryFDkGD8WP","name":"K","brief":"","defaultValue":"75","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FsOdM25wYXw9QE0AgIcf2","name":"L","brief":"","defaultValue":"76","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qlcc3lIX8obJAGLahX0PL","name":"LEFT","brief":"","defaultValue":"37","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0skGiH9BJ1hQFEpE0ARMi","name":"M","brief":"","defaultValue":"77","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qDzvkKGwJJKeQjLMlreql","name":"MINUS","brief":"","defaultValue":"189","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CDBG6ndgOFZZH5Yfi2UAa","name":"MULTIPLY","brief":"","defaultValue":"106","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tuOsOUHl_sG98HR_xNqC9","name":"N","brief":"","defaultValue":"78","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xOaojJkIZjb2HXaZet2KW","name":"NUM_LOCK","brief":"","defaultValue":"144","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"119TR4Xb9hPWc9WD7pwXy","name":"NUM0","brief":"","defaultValue":"48","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xx_tCKyD6NezKWupYDvzI","name":"NUM1","brief":"","defaultValue":"49","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y_7B-H4h5vd6LQRsZcRHp","name":"NUM2","brief":"","defaultValue":"50","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XMGMM4Rg51fmVZW5BL88t","name":"NUM3","brief":"","defaultValue":"51","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6VHFAg7dbAg5H5phVhKdQ","name":"NUM4","brief":"","defaultValue":"52","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z2H3v1YgY2UNrhF34wxnk","name":"NUM5","brief":"","defaultValue":"53","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eePDFfjWLAbYh0SV6vmy0","name":"NUM6","brief":"","defaultValue":"54","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YhN5fD2hD-yri0LIjuix2","name":"NUM7","brief":"","defaultValue":"55","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pXarD7zayFVLH4msiIYls","name":"NUM8","brief":"","defaultValue":"56","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dl1r3QXgFnhCRS_74ldc7","name":"NUM9","brief":"","defaultValue":"57","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WfBHMoFFeApfw3MrcScL4","name":"NUMPAD0","brief":"","defaultValue":"96","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m-jNID13ua2fLeXyeyg8C","name":"NUMPAD1","brief":"","defaultValue":"97","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G_eDFW9m0-h2G3uLXui_g","name":"NUMPAD2","brief":"","defaultValue":"98","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TSg3L3BwPQWA8eilalkfR","name":"NUMPAD3","brief":"","defaultValue":"99","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aBFqp_mO7cQ4-JubZbIy0","name":"NUMPAD4","brief":"","defaultValue":"100","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-xRmIeNMiLAO6T9uxIv_h","name":"NUMPAD5","brief":"","defaultValue":"101","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MwVnaeR4PoLPg01VbGp4g","name":"NUMPAD6","brief":"","defaultValue":"102","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WNnL82svI-iZbvMl-gg_q","name":"NUMPAD7","brief":"","defaultValue":"103","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HOvShV7ZeP6woXj51lJa5","name":"NUMPAD8","brief":"","defaultValue":"104","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Buwu4OJkvXYIndr8zTxC8","name":"NUMPAD9","brief":"","defaultValue":"105","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ebtvzGdh-p_ynAb6ZKCD7","name":"O","brief":"","defaultValue":"79","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3gTCZ2qOPCx-EBSnQxH-B","name":"OPEN_BRACKET","brief":"","defaultValue":"219","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C7iQ4N188ipLx3WZnSTcV","name":"P","brief":"","defaultValue":"80","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f7s8wBLo9QBARG4nPyMcu","name":"PAGE_DOWN","brief":"","defaultValue":"34","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4a19UbR1nwlpFvmg6h3WJ","name":"PAGE_UP","brief":"","defaultValue":"33","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8Ci5-wZqN1w4KLzrTq7uL","name":"PAUSE","brief":"","defaultValue":"19","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZyZcpOluQt1QGFM5FJhB8","name":"PERIOD","brief":"","defaultValue":"190","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HPCDMRIWnZ_rJSuCS0Tnn","name":"PLUS","brief":"","defaultValue":"187","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bv4thIz0tqUIgzP6Lxcl4","name":"PRINT_SCREEN","brief":"","defaultValue":"42","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zX8feM0uifpICnhBYtR-Y","name":"Q","brief":"","defaultValue":"81","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rXq84JKlyc4moRwX6RDZ7","name":"R","brief":"","defaultValue":"82","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y6NyE9D88qhhCCHLayCCR","name":"RIGHT","brief":"","defaultValue":"39","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6GufBjYijF-zNTCR7Jkce","name":"S","brief":"","defaultValue":"83","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tfLAKau0W8cFSO_U6c9pW","name":"SCROLL_LOCK","brief":"","defaultValue":"145","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Pz97E-yDw1PSTTlweOk4","name":"SEMICOLON","brief":"","defaultValue":"186","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3UwXKmX34eNrLpkOA2uLM","name":"SHIFT","brief":"","defaultValue":"16","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KO-i7G7TflmFAmoAhmxEY","name":"SINGLE_QUOTE","brief":"","defaultValue":"222","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FqBex9rn8yso-iV_i6oDW","name":"SPACE","brief":"","defaultValue":"32","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fZAAcxyxXma6D2Sj9txQg","name":"SUBSTRACT","brief":"","defaultValue":"109","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gn-kIuFCFKgZNt20Ml6sa","name":"T","brief":"","defaultValue":"84","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zCvWQVCNT-FFGII17Vo_c","name":"TAB","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4_QTPq7NK85zJwMbpKUET","name":"TILDE","brief":"","defaultValue":"126","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3xTGoYJkhFn7jL8v2ohO1","name":"U","brief":"","defaultValue":"85","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a204STRm-5PHRCjPf1t2a","name":"UP","brief":"","defaultValue":"38","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zFUStG4yFX8qB_lXqeU4F","name":"V","brief":"","defaultValue":"86","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IJPlegOTVSC2ycORVyCZI","name":"W","brief":"","defaultValue":"87","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vS6kPTAPnYVnQsKINiDEl","name":"WINDOW_KEY","brief":"","defaultValue":"91","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bDy2W0mTls4XW2XOqNB-6","name":"X","brief":"","defaultValue":"88","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BsQrwN5DY0mFx5cT4Np4b","name":"Y","brief":"","defaultValue":"89","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xkuVj1fmOW7E-WpTmEXDj","name":"Z","brief":"","defaultValue":"90","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"N5rFUTi1j-IlRrEhvQqnl","name":"keyBoardEventTarget","brief":"","access":"public","defaultValue":"undefined","type":"PropertyDoc","description":"

      the default target element for keyboard events (usually the window element in which the game is running)

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aQuuSJAZ4HT8o5wY9xsi4","name":"locked","brief":"","access":"public","defaultValue":"false","type":"PropertyDoc","description":"

      indicates if the pointer is currently locked

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vPAZA8wqvyeUnUGofTfQf","name":"pointer","brief":"","access":"public","type":"PropertyDoc","description":"

      Pointer information (current position and size)

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h442sHEpMi1aCRaqYX-nA","name":"pointerEventTarget","brief":"","access":"public","defaultValue":"undefined","type":"PropertyDoc","description":"

      the default target element for pointer events (usually the canvas element in which the game is rendered)

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YoKF2qlnYrnYQJ_xcFw_b","name":"preventDefault","brief":"","access":"public","defaultValue":"true","type":"PropertyDoc","description":"

      specify if melonJS should prevent all default browser action on registered events.

      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2SWOgtQv6sh3t_UvetDwh","name":"setGamepadMapping","brief":"","access":"public","examples":[{"caption":"","code":" // A weird controller that has its axis mappings reversed\n me.input.setGamepadMapping(\"Generic USB Controller\", {\n \"axes\" : [ 3, 2, 1, 0 ],\n \"buttons\" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 ]\n });\n\n // Mapping extra axes to analog buttons\n me.input.setGamepadMapping(\"Generic Analog Controller\", {\n \"axes\" : [ 0, 1, 2, 3 ],\n \"buttons\" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 ],\n\n // Raw axis 4 is mapped to GAMEPAD.BUTTONS.FACE_1\n // Raw axis 5 is mapped to GAMEPAD.BUTTONS.FACE_2\n // etc...\n // Also maps left and right triggers\n \"analog\" : [ 4, 5, 6, 7, -1, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1 ],\n\n // Normalize the value of button L2: [-1.0..1.0] => [0.0..1.0]\n \"normalize_fn\" : function (value, axis, button) {\n return ((button === me.input.GAMEPAD.BUTTONS.L2) ? ((value + 1) / 2) : value) || 0;\n }\n });"}],"type":"PropertyDoc","description":"

      specify a custom mapping for a specific gamepad id
      \nsee below for the default mapping :

      \n
      Gamepad id string

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"mapping","description":"

      A hash table

      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"mapping.axes","description":"

      Standard analog control stick axis locations

      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.buttons","description":"

      Standard digital button locations

      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.analog","optional":true,"description":"

      Analog axis locations for buttons

      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.normalize_fn","optional":true,"description":"

      a function that returns a normalized value in range [-1.0..1.0] for the given value, axis and button

      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"KmbOF6acbrei5msqkeTxC","name":"throttlingInterval","brief":"","access":"public","type":"PropertyDoc","description":"

      time interval for event throttling in milliseconds
      \ndefault value : "1000/me.timer.maxfps" ms
      \nset to 0 ms...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FGH80ygbduTi86ird1I-S","name":"bindGamepad","brief":"","access":"public","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.X, \"shoot\");\n...\n// map the lower face button on the first gamepad to the X key\nme.input.bindGamepad(0, {type:\"buttons\", code: me.input.GAMEPAD.BUTTONS.FACE_1}, me.input.KEY.X);\n// map the left axis value on the first gamepad to the LEFT key\nme.input.bindGamepad(0, {type:\"axes\", code: me.input.GAMEPAD.AXES.LX, threshold: -0.5}, me.input.KEY.LEFT);"}],"type":"FunctionDoc","description":"

      Associate a gamepad event to a keycode

      ","params":[{"identifier":"index","optional":false,"description":"

      Gamepad index

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button","optional":false,"description":"

      Button/Axis definition

      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"button.type","description":"

      "buttons" or "axes"

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"button.code","description":"

      button or axis code id (See {@link input.GAMEPAD.BUTTONS}, {@link input.GAMEPAD.AXES})

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button.threshold","optional":true,"default":"1","description":"

      value indicating when the axis should trigger the keycode (e.g. -0.5 or 0.5)

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"keyCode","optional":false,"description":"

      (See {@link input.KEY})

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NVON9fkvXhD9KKhZrX39i","name":"bindKey","brief":"","access":"public","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.LEFT, \"left\");\nme.input.bindKey(me.input.KEY.RIGHT, \"right\");\nme.input.bindKey(me.input.KEY.X, \"jump\", true);\nme.input.bindKey(me.input.KEY.F1, \"options\", true, true);"}],"type":"FunctionDoc","description":"

      associate a user defined action to a keycode

      ","params":[{"identifier":"keycode","optional":false,"description":"

      (See {@link input.KEY})

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"action","optional":false,"description":"

      user defined corresponding action

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"lock","optional":true,"default":"false","description":"

      cancel the keypress event once read

      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"preventDefault","optional":true,"default":"input.preventDefault","description":"

      prevent default browser action

      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"kjnvKS6NaRXS1D1_ui1_M","name":"bindPointer","brief":"","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.X, \"shoot\");\n// map the left button click on the X key (default if the button is not specified)\nme.input.bindPointer(me.input.KEY.X);\n// map the right button click on the X key\nme.input.bindPointer(me.input.pointer.RIGHT, me.input.KEY.X);"}],"type":"FunctionDoc","description":"

      Associate a pointer event to a keycode
      \nLeft button – 0\nMiddle button – 1\nRight button – 2

      ","params":[{"identifier":"button","optional":true,"default":"input.pointer.LEFT","description":"

      (accordingly to W3C values : 0,1,2 for left, middle and right buttons)

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"keyCode","dataType":{"tokens":[{"value":"input.KEY","kind":"canonical"},{"value":"input.KEY","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WtEaQR9vWqgodVjw7nUAM","name":"exitPointerLock","brief":"","type":"FunctionDoc","description":"

      Initiates an exit from pointer lock state

      ","params":[],"returns":[{"description":"

      return true if the request was successfully submitted

      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"KIF-GPGsVFB8UyjbuXxBX","name":"getBindingKey","brief":"","access":"public","type":"FunctionDoc","description":"

      return the action associated with the given keycode

      ","params":[{"identifier":"keycode","optional":false,"description":"

      (See {@link input.KEY})

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

      user defined associated action

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"ESDo_anDDL3ci49loEuca","name":"globalToLocal","brief":"","examples":[{"caption":"","code":"onMouseEvent : function (pointer) {\n // convert the given into local (viewport) relative coordinates\n let pos = me.input.globalToLocal(pointer.clientX, pointer.clientY);\n // do something with pos !\n};"}],"type":"FunctionDoc","description":"

      Translate the specified x and y values from the global (absolute)\ncoordinate to local (viewport) relative coordinate.

      ","params":[{"identifier":"x","optional":false,"description":"

      the global x coordinate to be translated.

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

      the global y coordinate to be translated.

      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

      an optional vector object where to set the translated coordinates

      ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

      A vector object with the corresponding translated coordinates

      ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kbCe0drEaalqU9ygXGuUY","name":"hasActiveEvents","brief":"","type":"FunctionDoc","description":"

      return true if there are pending pointer events in the queue

      ","params":[],"returns":[{"description":"

      true if there are pending events

      "}],"extends":[],"implements":[]},{"id":"6GdsFZkWbbwB-UEdzWYBE","name":"hasRegisteredEvents","brief":"","see":["registerPointerEvent"],"type":"FunctionDoc","description":"

      return true if there are register pointer events

      ","params":[],"returns":[{"description":"

      true if there are pending events

      "}],"extends":[],"implements":[]},{"id":"aBt0Ad2dzLSNsZZK_1gqS","name":"isKeyPressed","brief":"","access":"public","examples":[{"caption":"","code":"if (me.input.isKeyPressed('left')) {\n //do something\n}\nelse if (me.input.isKeyPressed('right')) {\n //do something else...\n}"}],"type":"FunctionDoc","description":"

      return the key press status of the specified action

      ","params":[{"identifier":"action","optional":false,"description":"

      user defined corresponding action

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

      true if pressed

      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CQ5sYRcaIEIODzWFzi7rN","name":"keyStatus","brief":"","access":"public","type":"FunctionDoc","description":"

      return the key status of the specified action

      ","params":[{"identifier":"action","optional":false,"description":"

      user defined corresponding action

      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

      down (true) or up(false)

      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rf5GWIy0GdIJVEC69k3Ka","name":"registerPointerEvent","brief":"","examples":[{"caption":"","code":" // onActivate function\n onActivateEvent: function () {\n // register on the 'pointerdown' event\n me.input.registerPointerEvent('pointerdown', this, (e) => this.pointerDown(e));\n },\n\n // pointerDown event callback\n pointerDown: function (pointer) {\n // do something\n ....\n // don\"t propagate the event to other objects\n return false;\n },"}],"see":["Pointer","{@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}"],"type":"FunctionDoc","description":"

      allows registration of event listeners on the object target.
      \nmelonJS will pass a me.Pointer object to the defined cal...","params":[{"identifier":"eventType","optional":false,"description":"

      The event type for which the object is registering
      \nmelonJS currently supports:

      \n
        \n
      • \"pointermo...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"region","optional":false,"description":"

        a shape representing the region to register on

        ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"callback","optional":false,"description":"

        methods to be called when the event occurs.\nReturning false from the defined callback will prevent the event ...","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"s68PxTEYh-xyGqndEtSYy","name":"releaseAllPointerEvents","brief":"","examples":[{"caption":"","code":"// release all registered event on the\nme.input.releaseAllPointerEvents(this);"}],"type":"FunctionDoc","description":"

        allows the removal of all registered event listeners from the object target.

        ","params":[{"identifier":"region","optional":false,"description":"

        the registered region to release event from

        ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[],"extends":[],"implements":[]},{"id":"OPVt65YfCEeJha5s0HYc1","name":"releasePointerEvent","brief":"","examples":[{"caption":"","code":"// release the registered region on the 'pointerdown' event\nme.input.releasePointerEvent('pointerdown', this);"}],"see":["{@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}"],"type":"FunctionDoc","description":"

        allows the removal of event listeners from the object target.

        ","params":[{"identifier":"eventType","optional":false,"description":"

        The event type for which the object was registered. See {@link input.registerPointerEvent}

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"region","optional":false,"description":"

        the registered region to release for this event

        ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"callback","optional":true,"default":"\"all\"","description":"

        if specified unregister the event only for the specific callback

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"EjBhhRNOKNuZMOy09dswK","name":"requestPointerLock","brief":"","examples":[{"caption":"","code":"// register on the pointer lock change event\nevent.on(event.POINTERLOCKCHANGE, (locked)=> {\n console.log(\"pointer lock: \" + locked);\n});\n// request for pointer lock\nme.input.requestPointerLock();"}],"type":"FunctionDoc","description":"

        request for the pointer to be locked on the parent DOM element.\n(Must be called in a click event or an event that requires...","params":[],"returns":[{"description":"

        return true if the request was successfully submitted

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NbB3LY8bZF2-kJKoXr8aW","name":"setGamepadDeadzone","brief":"","access":"public","type":"FunctionDoc","description":"

        Set deadzone for analog gamepad inputs
        \nThe default deadzone is 0.1 (10%) Analog values less than this will be ignored

        ","params":[{"identifier":"value","optional":false,"description":"

        Deadzone value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mAcb9m-QZgGeowXP30HJB","name":"setTouchAction","brief":"","see":["https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action"],"type":"FunctionDoc","description":"

        enable/disable all gestures on the given element.
        \nby default melonJS will disable browser handling of all panning and ...","params":[{"identifier":"element","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"value","optional":true,"default":"\"none\"","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"9z9ilzROtWZrfMZWHFMSH","name":"triggerKeyEvent","brief":"","access":"public","examples":[{"caption":"","code":"// trigger a key press\nme.input.triggerKeyEvent(me.input.KEY.LEFT, true);"}],"type":"FunctionDoc","description":"

        trigger the specified key (simulated) event

        ","params":[{"identifier":"keycode","optional":false,"description":"

        (See {@link input.KEY})

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"status","optional":true,"default":"false","description":"

        true to trigger a key down event, or false for key up event

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"mouseButton","optional":true,"description":"

        the mouse button to trigger

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"b7MF1eRpZ-VxJi1v_z_fV","name":"unbindGamepad","brief":"","access":"public","examples":[{"caption":"","code":"me.input.unbindGamepad(0, me.input.GAMEPAD.BUTTONS.FACE_1);"}],"type":"FunctionDoc","description":"

        unbind the defined keycode

        ","params":[{"identifier":"index","optional":false,"description":"

        Gamepad index

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button","optional":false,"description":"

        (See {@link input.GAMEPAD.BUTTONS})

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_3F3SPM_ocHy3iwfzl6vj","name":"unbindKey","brief":"","access":"public","examples":[{"caption":"","code":"me.input.unbindKey(me.input.KEY.LEFT);"}],"type":"FunctionDoc","description":"

        unbind the defined keycode

        ","params":[{"identifier":"keycode","optional":false,"description":"

        (See {@link input.KEY})

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uvbTX138_oWvR1gdPMZj0","name":"unbindPointer","brief":"","examples":[{"caption":"","code":"me.input.unbindPointer(me.input.pointer.LEFT);"}],"type":"FunctionDoc","description":"

        unbind the defined keycode

        ","params":[{"identifier":"button","optional":true,"default":"input.pointer.LEFT","description":"

        (accordingly to W3C values : 0,1,2 for left, middle and right buttons)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uodFtc1ttkJexEJuyPZCC","name":"unlockKey","brief":"","access":"public","examples":[{"caption":"","code":"// Unlock jump when touching the ground\nif (!this.falling && !this.jumping) {\n me.input.unlockKey(\"jump\");\n}"}],"type":"FunctionDoc","description":"

        unlock a key manually

        ","params":[{"identifier":"action","optional":false,"description":"

        user defined corresponding action

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"Ugoxnucl_WW_Qyxch_j_O","name":"level","brief":"","type":"NSDoc","description":"

        a level manager. once ressources loaded, the level manager contains all references of defined levels.

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"tnzJ88rro5Jun6GuKlDTS","name":"add","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        add a level into the game manager (usually called by the preloader)

        ","params":[{"identifier":"format","optional":false,"description":"

        level format (only "tmx" supported)

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"levelId","optional":false,"description":"

        the level id (or name)

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"callback","optional":true,"description":"

        a function to be called once the level is loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

        true if the level was loaded

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Q8wOqIeO1E3FJnLzFiu4e","name":"getCurrentLevel","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return the current level definition.\nfor a reference to the live instantiated level,\nrather use the container in which it ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Jqb6rFU0si21p3MtHrQJ9","name":"getCurrentLevelId","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return the current level id

        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"jZ7PmqLYbG20CxG9leN2P","name":"levelCount","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return the amount of level preloaded

        ","params":[],"returns":[{"description":"

        the amount of level preloaded

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6NPvzXkx8XDuzBFogO2dA","name":"load","brief":"","access":"public","examples":[{"caption":"","code":" // the game assets to be be preloaded\n // TMX maps\n let resources = [\n {name: \"a4_level1\", type: \"tmx\", src: \"data/level/a4_level1.tmx\"},\n {name: \"a4_level2\", type: \"tmx\", src: \"data/level/a4_level2.tmx\"},\n {name: \"a4_level3\", type: \"tmx\", src: \"data/level/a4_level3.tmx\"},\n // ...\n ];\n\n // ...\n\n // load a level into the game world\n me.level.load(\"a4_level1\");\n ...\n ...\n // load a level into a specific container\n let levelContainer = new me.Container();\n me.level.load(\"a4_level2\", {container:levelContainer});\n // add a simple transformation\n levelContainer.currentTransform.translate(levelContainer.width / 2, levelContainer.height / 2 );\n levelContainer.currentTransform.rotate(0.05);\n levelContainer.currentTransform.translate(-levelContainer.width / 2, -levelContainer.height / 2 );\n // add it to the game world\n me.game.world.addChild(levelContainer);"}],"scope":"instance","type":"MethodDoc","description":"

        load a level into the game manager
        \n(will also create all level defined entities, etc..)

        ","params":[{"identifier":"levelId","optional":false,"description":"

        level id

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options","optional":true,"description":"

        additional optional parameters

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

        container in which to load the specified level

        ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

        callback for when the level is fully loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

        if true, flatten all objects into the given container

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"options.setViewportBounds","optional":true,"default":"true","description":"

        if true, set the viewport bounds to the map size

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

        true if the level was successfully loaded

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"c-wdZHvhEnB775_zEHONB","name":"next","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        load the next level

        ","params":[{"identifier":"options","optional":true,"description":"

        additional optional parameters

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

        container in which to load the specified level

        ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

        callback for when the level is fully loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

        if true, flatten all objects into the given container

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

        true if the next level was successfully loaded

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"oz9rTiQILSfd3Z6uPVv3z","name":"previous","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        load the previous level

        ","params":[{"identifier":"options","optional":true,"description":"

        additional optional parameters

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

        container in which to load the specified level

        ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

        callback for when the level is fully loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

        if true, flatten all objects into the given container

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

        true if the previous level was successfully loaded

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mUeRSbQYdp27qKRHHgLoP","name":"reload","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        reload the current level

        ","params":[{"identifier":"options","optional":true,"description":"

        additional optional parameters

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

        container in which to load the specified level

        ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

        callback for when the level is fully loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

        if true, flatten all objects into the given container

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

        the current level

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]}]},{"id":"feIw2ZpU8pEiPuPwgSdSr","name":"loader","brief":"","type":"NSDoc","description":"

        a small class to manage loading of stuff and manage resources

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"5yxmkbpFENMvEbAja01E0","name":"Asset","brief":"","examples":[{"caption":"","code":"// PNG tileset\n{name: \"tileset-platformer\", type: \"image\", src: \"data/map/tileset.png\"}\n// PNG packed texture\n{name: \"texture\", type:\"image\", src: \"data/gfx/texture.png\"}\n// PNG base64 encoded image\n{name: \"texture\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"}\n// TSX file\n{name: \"meta_tiles\", type: \"tsx\", src: \"data/map/meta_tiles.tsx\"}\n// TMX level (XML & JSON)\n{name: \"map1\", type: \"tmx\", src: \"data/map/map1.json\"}\n{name: \"map2\", type: \"tmx\", src: \"data/map/map2.tmx\"}\n{name: \"map3\", type: \"tmx\", format: \"json\", data: {\"height\":15,\"layers\":[...],\"tilewidth\":32,\"version\":1,\"width\":20}}\n{name: \"map4\", type: \"tmx\", format: \"xml\", data: {xml representation of tmx}}\n// audio resources\n{name: \"bgmusic\", type: \"audio\", src: \"data/audio/\"}\n{name: \"cling\", type: \"audio\", src: \"data/audio/\"}\n// base64 encoded audio resources\n{name: \"band\", type: \"audio\", src: \"data:audio/wav;base64,...\"}\n// binary file\n{name: \"ymTrack\", type: \"binary\", src: \"data/audio/main.ym\"}\n// JSON file (used for texturePacker)\n{name: \"texture\", type: \"json\", src: \"data/gfx/texture.json\"}\n// JavaScript file\n{name: \"plugin\", type: \"js\", src: \"data/js/plugin.js\"}\n// Font Face\n{ name: \"'kenpixel'\", type: \"fontface\", src: \"url('data/font/kenvector_future.woff2')\" }"}],"scope":"static","see":["loader.preload","loader.load"],"type":"TypedefDoc","description":"

        an asset definition to be used with the loader

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"x25pafz5ddEvLwbc0CrQ3","name":"data","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        TMX data if not provided through a src url

        "},{"id":"Fa3-1ikPRukUmciTfnE3V","name":"name","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        name of the asset

        "},{"id":"YXwk4CrWVGdL_BYnAFvE2","name":"src","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        path and/or file name of the resource (for audio assets only the path is required)

        "},{"id":"x8um8Xw7Diner2Pe7RDf2","name":"stream","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Set to true to force HTML5 Audio, which allows not to wait for large file to be downloaded before playing.

        "},{"id":"m-MfCr-0aA_BtcICR1A3a","name":"type","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

        the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx&qu..."}]},{"id":"5ATRjhORcYZEW7OreFy6v","name":"crossOrigin","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":" // allow for cross-origin texture loading in WebGL\n me.loader.crossOrigin = \"anonymous\";\n\n // set all ressources to be loaded\n me.loader.preload(game.resources, () => this.loaded());"}],"see":["https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes"],"type":"PropertyDoc","description":"

        crossOrigin attribute to configure the CORS requests for Image data element.\nBy default (that is, when the attribute is no...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ojQl1RQ94GP0NXtzSnPkW","name":"onload","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback when everything is loaded\nme.loader.onload = this.loaded.bind(this);"}],"type":"PropertyDoc","description":"

        onload callback

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D2otuTPEeWLd4cruc3L9W","name":"onProgress","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback for progress notification\nme.loader.onProgress = this.updateProgress.bind(this);"}],"type":"PropertyDoc","description":"

        onProgress callback
        \neach time a resource is loaded, the loader will fire the specified function,\ngiving the actual pro...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oZ6GoqjOlItWksmt_yt6j","name":"withCredentials","brief":"","access":"public","defaultValue":"false","examples":[{"caption":"","code":" // enable withCredentials\n me.loader.withCredentials = true;\n\n // set all ressources to be loaded\n me.loader.preload(game.resources, () => this.loaded());"}],"see":["https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials"],"type":"PropertyDoc","description":"

        indicates whether or not cross-site Access-Control requests should be made using credentials such as cookies,\nauthorizatio...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wn2P4CmTYp5HPSHqJCREp","name":"getBinary","brief":"","type":"FunctionDoc","description":"

        return the specified Binary object

        ","params":[{"identifier":"elt","optional":false,"description":"

        name of the binary object ("ymTrack");

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        requested element or null if not found

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"RFSOxWERvUy2yNTgCtX8m","name":"getImage","brief":"","type":"FunctionDoc","description":"

        return the specified Image Object

        ","params":[{"identifier":"image","optional":false,"description":"

        name of the Image element ("tileset-platformer");

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        requested element or null if not found

        ","dataType":{"tokens":[{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bYDisHYw9Jey_Qs2mAnk2","name":"getJSON","brief":"","type":"FunctionDoc","description":"

        return the specified JSON Object

        ","params":[{"identifier":"elt","optional":false,"description":"

        name of the json file to load

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"cDT7PlP10FhlOsFMsI0rM","name":"getTMX","brief":"","type":"FunctionDoc","description":"

        return the specified TMX/TSX object

        ","params":[{"identifier":"elt","optional":false,"description":"

        name of the tmx/tsx element ("map1");

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        requested element or null if not found

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"VFpVvrFWxBvSI_VNx1VQt","name":"load","brief":"","examples":[{"caption":"","code":"// load an image asset\nme.loader.load({name: \"avatar\", type:\"image\", src: \"data/avatar.png\"}, () => this.onload(), () => this.onerror());\n// load a base64 image asset\n me.loader.load({name: \"avatar\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"};\n// start loading music\nme.loader.load({\n name : \"bgmusic\",\n type : \"audio\",\n src : \"data/audio/\"\n}, function () {\n me.audio.play(\"bgmusic\");\n});"}],"type":"FunctionDoc","description":"

        Load a single asset (to be used if you need to load additional asset(s) during the game)

        ","params":[{"identifier":"asset","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}},{"identifier":"onload","optional":true,"description":"

        function to be called when the asset is loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"onerror","optional":true,"description":"

        function to be called in case of error

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

        the amount of corresponding resource to be preloaded

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uzyhoWH1B5cDhFckw56pM","name":"preload","brief":"","examples":[{"caption":"","code":"game.assets = [\n // PNG tileset\n {name: \"tileset-platformer\", type: \"image\", src: \"data/map/tileset.png\"},\n // PNG packed texture\n {name: \"texture\", type:\"image\", src: \"data/gfx/texture.png\"}\n // PNG base64 encoded image\n {name: \"texture\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"}\n // TSX file\n {name: \"meta_tiles\", type: \"tsx\", src: \"data/map/meta_tiles.tsx\"},\n // TMX level (XML & JSON)\n {name: \"map1\", type: \"tmx\", src: \"data/map/map1.json\"},\n {name: \"map2\", type: \"tmx\", src: \"data/map/map2.tmx\"},\n {name: \"map3\", type: \"tmx\", format: \"json\", data: {\"height\":15,\"layers\":[...],\"tilewidth\":32,\"version\":1,\"width\":20}},\n {name: \"map4\", type: \"tmx\", format: \"xml\", data: {xml representation of tmx}},\n // audio resources\n {name: \"bgmusic\", type: \"audio\", src: \"data/audio/\"},\n {name: \"cling\", type: \"audio\", src: \"data/audio/\"},\n // base64 encoded audio resources\n {name: \"band\", type: \"audio\", src: \"data:audio/wav;base64,...\"},\n // binary file\n {name: \"ymTrack\", type: \"binary\", src: \"data/audio/main.ym\"},\n // JSON file (used for texturePacker)\n {name: \"texture\", type: \"json\", src: \"data/gfx/texture.json\"},\n // JavaScript file\n {name: \"plugin\", type: \"js\", src: \"data/js/plugin.js\"},\n // Font Face\n { name: \"'kenpixel'\", type: \"fontface\", src: \"url('data/font/kenvector_future.woff2')\" }\n];\n...\n// set all resources to be loaded\nme.loader.preload(game.assets, () => this.loaded());"}],"type":"FunctionDoc","description":"

        set all the specified game assets to be preloaded.

        ","params":[{"identifier":"assets","optional":false,"description":"

        list of assets to load

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1<%2>"}},{"identifier":"onloadcb","optional":true,"default":"loader.onload","description":"

        function to be called when all resources are loaded

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"switchToLoadState","optional":true,"default":"true","description":"

        automatically switch to the loading screen

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"T-GsiWvnogxDExBN7JhTc","name":"setBaseURL","brief":"","access":"public","examples":[{"caption":"","code":"// change the base URL relative address for audio assets\nme.loader.setBaseURL(\"audio\", \"data/audio/\");\n// change the base URL absolute address for all object types\nme.loader.setBaseURL(\"*\", \"http://myurl.com/\")"}],"type":"FunctionDoc","description":"

        change the default baseURL for the given asset type.
        \n(this will prepend the asset URL and must finish with a '/')

        ","params":[{"identifier":"type","optional":false,"description":"

        "*", "audio", binary", "image", "json", "js", "tmx", &quo...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"url","optional":true,"default":"\"./\"","description":"

        default base URL

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"zLeY0Nnp3qhlQSJsO4nZn","name":"setParser","brief":"","examples":[{"caption":"","code":"// specify a custom function for \"abc\" format\nfunction customAbcParser(data, onload, onerror) {\n // preload and do something with the data\n let parsedData = doSomething(data);\n // when done, call the onload callback with the parsed data\n onload(parsedData);\n // in case of error, call the onerror callback\n onerror();\n // return the amount of asset parsed\n return 1\n}\n// set the parser for the custom format\nloader.setParser(\"abc\", customAbcParser);"}],"see":["loader.Asset.type"],"type":"FunctionDoc","description":"

        specify a parser/preload function for the given asset type

        ","params":[{"identifier":"type","optional":false,"description":"

        asset type

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"parserFn","optional":false,"description":"

        parser function

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"ofi6Em4lGywf8gH4-YjYY","name":"unload","brief":"","examples":[{"caption":"","code":"me.loader.unload({name: \"avatar\", type:\"image\"});"}],"type":"FunctionDoc","description":"

        unload the specified asset to free memory

        ","params":[{"identifier":"asset","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

        true if unloaded

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aLuu4UcXxjImwlb3dbq-z","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.loader.unloadAll();"}],"type":"FunctionDoc","description":"

        unload all resources to free memory

        ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"6uOZhgltQbSTm-rQZhO9c","name":"Math","brief":"","type":"NSDoc","description":"

        a collection of math utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"YKvJ_THYFCLjrqT9b6quQ","name":"DEG_TO_RAD","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

        constant to convert from degrees to radians

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ImeM4n3NYloA1Je9LM8Bb","name":"EPSILON","brief":"","access":"public","defaultValue":"0.000001","readonly":true,"type":"PropertyDoc","description":"

        the difference between 1 and the smallest floating point number greater than 1

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q6MNwLTxG6ROgrItJBJAM","name":"ETA","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

        constant equals to half pi

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fiJYG9eR4mOw3MXWKKNYb","name":"RAD_TO_DEG","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

        constant to convert from radians to degrees

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CWPALs8jY4_PFJdbRdRHg","name":"TAU","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

        constant equals to 2 times pi

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EnUrS7jIPiMyPy4SA7Epu","name":"clamp","brief":"","access":"public","type":"FunctionDoc","description":"

        clamp the given value

        ","params":[{"identifier":"val","optional":false,"description":"

        the value to clamp

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"low","optional":false,"description":"

        lower limit

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"description":"

        higher limit

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        clamped value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qG9YKXO_RtHaZIJFm-sWb","name":"degToRad","brief":"","access":"public","examples":[{"caption":"","code":"// convert a specific angle\nme.Math.degToRad(60); // return 1.0471..."}],"type":"FunctionDoc","description":"

        Converts an angle in degrees to an angle in radians

        ","params":[{"identifier":"angle","optional":false,"description":"

        angle in degrees

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        corresponding angle in radians

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Bj38FB_JB_N1Obv2lzuhM","name":"isPowerOfTwo","brief":"","access":"public","type":"FunctionDoc","description":"

        returns true if the given value is a power of two

        ","params":[{"identifier":"val","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kxXJYrk7FBrbljkgrYjxJ","name":"nextPowerOfTwo","brief":"","access":"public","type":"FunctionDoc","description":"

        returns the next power of two for the given value

        ","params":[{"identifier":"val","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hzgfGVu0hcyOMuU8qCL5m","name":"radToDeg","brief":"","access":"public","examples":[{"caption":"","code":"// convert a specific angle\nme.Math.radToDeg(1.0471975511965976); // return 60"}],"type":"FunctionDoc","description":"

        Converts an angle in radians to an angle in degrees.

        ","params":[{"identifier":"radians","optional":false,"description":"

        angle in radians

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        corresponding angle in degrees

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iWhQmzr7dvPgD7uvcwig5","name":"random","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.random(5, 10) );"}],"type":"FunctionDoc","description":"

        return a random integer between min (included) and max (excluded)

        ","params":[{"identifier":"min","optional":false,"description":"

        minimum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

        maximum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        random value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nPj6eesEo3XFF-xixrxWj","name":"randomFloat","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.randomFloat(5, 10) );"}],"type":"FunctionDoc","description":"

        return a random float between min, max (exclusive)

        ","params":[{"identifier":"min","optional":false,"description":"

        minimum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

        maximum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        random value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rLO1R_ufwdSTMqxwn-73-","name":"round","brief":"","access":"public","examples":[{"caption":"","code":"// round a specific value to 2 digits\nme.Math.round(10.33333, 2); // return 10.33"}],"type":"FunctionDoc","description":"

        round a value to the specified number of digit

        ","params":[{"identifier":"num","optional":false,"description":"

        value to be rounded.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dec","optional":true,"default":"0","description":"

        number of decimal digit to be rounded to.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        rounded value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m9a4yFdJKA15wiQ37HeMX","name":"toBeCloseTo","brief":"","access":"public","examples":[{"caption":"","code":"// test if the given value is close to 10\nif (me.Math.toBeCloseTo(10, value)) {\n // do something\n}"}],"type":"FunctionDoc","description":"

        check if the given value is close to the expected one

        ","params":[{"identifier":"expected","optional":false,"description":"

        value to be compared with.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"actual","optional":false,"description":"

        actual value to compare

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"precision","optional":true,"default":"2","description":"

        float precision for the comparison

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        if close to

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Wn51l9ueR_Fhdv2Ec6q0S","name":"weightedRandom","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.weightedRandom(5, 10) );"}],"type":"FunctionDoc","description":"

        return a weighted random between min, max (exclusive)

        ","params":[{"identifier":"min","optional":false,"description":"

        minimum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

        maximum value.

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        random value

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"MlFk_4XAEeDocuCYfhMBU","name":"ParticleEmitterSettings","brief":"","readonly":true,"see":["ParticleEmitter"],"type":"NSDoc","description":"

        ParticleEmitterSettings contains the default settings for ParticleEmitter

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ELHJrtxoZWB1Wu2oMYYHs","name":"angle","brief":"","access":"public","defaultValue":"Math.PI / 2","scope":"static","type":"PropertyDoc","description":"

        Start angle for particle launch in Radians

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_7SxhwCogxbZ2-z17WARb","name":"angleVariation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        letiation in the start angle for particle launch in Radians.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I-k_TJcJo-lR4xlaSpkTw","name":"blendMode","brief":"","access":"public","defaultValue":"normal","scope":"static","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

        the blend mode to be applied when rendering particles.\n(note: this will superseed the textureAdditive setting...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D3AhoFgKYVl2M7dyDizae","name":"duration","brief":"","access":"public","defaultValue":"Infinity","scope":"static","type":"PropertyDoc","description":"

        Duration that the emitter releases particles in ms (used only if emitter is Stream).\nAfter this period, the emitter stop t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9lBqmtORKd-URl6AEqeWZ","name":"floating","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Render particles in screen space.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4rzJ-rNb8gtxIiSI_fSSS","name":"followTrajectory","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        Update the rotation of particle in accordance the particle trajectory.
        \nThe particle sprite should aim at zero angle (d...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JgzNk4V9PPyRFvimflehZ","name":"framesToSkip","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Skip n frames after updating the particle system once.\nThis can be used to reduce the performance impact of emitters with ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zdEEpK7C1Sa1EXElU6p7b","name":"frequency","brief":"","access":"public","defaultValue":"100","scope":"static","type":"PropertyDoc","description":"

        How often a particle is emitted in ms (used only if emitter is a Stream).

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"It7ykPzs86aMAO0uWZeoJ","name":"gravity","brief":"","access":"public","defaultValue":"0","scope":"static","see":["game.world.gravity"],"type":"PropertyDoc","description":"

        Vertical force (Gravity) for each particle

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IEAfaITOdH2eLG-JEoIPh","name":"height","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        Height of the particle spawn area

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3yJnyJkGkjBsFWyPohrFS","name":"image","brief":"","access":"public","defaultValue":"undefined","scope":"static","see":["ParticleEmitterSettings.textureSize"],"type":"PropertyDoc","description":"

        image used for particles texture\n(by default melonJS will create an white 8x8 texture image)

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7IeAkg1RzmYs3K3jEJ3vo","name":"maxEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Maximum end scale ratio for particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AEecIh-BeZbpGabDQfqpj","name":"maxLife","brief":"","access":"public","defaultValue":"3000","scope":"static","type":"PropertyDoc","description":"

        Maximum time each particle lives once it is emitted in ms.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zGvWtLxQou5bh0VuqeewV","name":"maxParticles","brief":"","access":"public","defaultValue":"10","scope":"static","type":"PropertyDoc","description":"

        Maximum number of particles launched each time in this emitter (used only if emitter is Stream).

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gwqU8eG_6KU6aK-0oGXYw","name":"maxRotation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Maximum start rotation for particles sprites in Radians

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vNm-4eyk0O0_6A8_S9Kmj","name":"maxStartScale","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        Maximum start scale ratio for particles (1 = no scaling)

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g_MdwEuzvBwJjuK2orgz7","name":"minEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Minimum end scale ratio for particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SX2fntpy0PvQ86hvglLTt","name":"minLife","brief":"","access":"public","defaultValue":"1000","scope":"static","type":"PropertyDoc","description":"

        Minimum time each particle lives once it is emitted in ms.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1tpFrZQ3gFwyPAkfBAXKE","name":"minRotation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Minimum start rotation for particles sprites in Radians

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x_WAbgMLxn_db6h-2EGn3","name":"minStartScale","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        Minimum start scale ratio for particles (1 = no scaling)

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s5nuiT_X5rQNqnkx_orUw","name":"onlyInViewport","brief":"","access":"public","defaultValue":"true","scope":"static","type":"PropertyDoc","description":"

        Update particles only in the viewport, remove it when out of viewport.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yh8raMzvjCYUOzqY09aWw","name":"speed","brief":"","access":"public","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

        Start speed of particles.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J1TgAD90nMB787IMuAqBZ","name":"speedVariation","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        letiation in the start speed of particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZZjPX3CS16BxARxf4-KDc","name":"textureAdditive","brief":"","access":"public","defaultValue":"false","scope":"static","see":["ParticleEmitterSettings.blendMode"],"type":"PropertyDoc","description":"

        Enable the Texture Additive by composite operation ("additive" blendMode)

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H2U7GeElYfLT-60iSw2OY","name":"textureSize","brief":"","access":"public","defaultValue":"8","scope":"static","see":["ParticleEmitterSettings.image"],"type":"PropertyDoc","description":"

        default texture size used for particles if no image is specified\n(by default melonJS will create an white 8x8 texture imag...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fUMqi3gO3aVdv9OD4u0ps","name":"tint","brief":"","access":"public","defaultValue":"\"#fff\"","scope":"static","type":"PropertyDoc","description":"

        tint to be applied to particles

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JpwiS72IDtaO-L0lWGTTS","name":"totalParticles","brief":"","access":"public","defaultValue":"50","scope":"static","type":"PropertyDoc","description":"

        Total number of particles in the emitter

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BlUU-axBKoZhkDAKesA54","name":"width","brief":"","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        Width of the particle spawn area.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MbFMJvyQW7UNN-wQmJuYD","name":"wind","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        Horizontal force (like a Wind) for each particle

        ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"iG05p8trGJRydwJiluy6_","name":"plugin","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"zS0Ucj_Jz-dRMVRaPPjBd","name":"Base","brief":"","deprecated":"since 15.1.6, see {@link plugin.BasePlugin}","type":"ClassDoc","params":[],"returns":[],"extends":["plugin.BasePlugin"],"implements":[],"members":[{"id":"TMJTVQy6uq8cnZI7TE_bQ","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

        a reference to the app/game that registered this plugin

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K09aVi9SDQeWf1SSfEs-i","name":"version","brief":"","defaultValue":"\"__VERSION__\"","scope":"instance","type":"PropertyDoc","description":"

        define the minimum required version of melonJS
        \nthis can be overridden by the plugin

        ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"fjRCaQVVybN08thnDmuj6","name":"BasePlugin","brief":"","type":"ClassDoc","description":"

        a base Object class for plugin\n(plugin must be installed using the register function)

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"0DEUHmXPJlMk2cnf0Ndqy","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

        a reference to the app/game that registered this plugin

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H-RsP7jPzQPORfuHX1Alv","name":"version","brief":"","defaultValue":"\"__VERSION__\"","scope":"instance","type":"PropertyDoc","description":"

        define the minimum required version of melonJS
        \nthis can be overridden by the plugin

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D5DHfFk8pqOWKtKA9LNQS","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"app","optional":true,"description":"

        a reference to the app/game that registered this plugin

        ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"5_xuY9iCovU7OkO64rmAn","name":"cache","brief":"","type":"PropertyDoc","description":"

        Contains all registered plugins.

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HCU4Pp3nU_QMeUoPWZIwY","name":"get","brief":"","type":"FunctionDoc","description":"

        returns the the plugin instance with the specified class type or registered name

        ","params":[{"identifier":"classType","optional":false,"description":"

        the Class Object or registered name of the plugin to retreive

        ","dataType":{"tokens":[{"value":"object | string","kind":"canonical"}],"template":"object | string"}}],"returns":[{"description":"

        a plugin instance or undefined

        ","dataType":{"tokens":[{"value":"BasePlugin","kind":"canonical"},{"value":"BasePlugin","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7EtH-bY-l7AG7KT6MguVp","name":"patch","brief":"","examples":[{"caption":"","code":"// redefine the me.game.update function with a new one\nme.plugin.patch(me.game, \"update\", function () {\n // display something in the console\n console.log(\"duh\");\n // call the original me.game.update function\n this._patched();\n});"}],"type":"FunctionDoc","description":"

        patch a melonJS function

        ","params":[{"identifier":"proto","optional":false,"description":"

        target object

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"name","optional":false,"description":"

        target function

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"fn","optional":false,"description":"

        replacement function

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"J85DBwAXl-0jk-pOcJs8W","name":"register","brief":"","examples":[{"caption":"","code":"// register a new plugin\nme.plugin.register(TestPlugin, \"testPlugin\");\n// the `testPlugin` class instance can also be accessed through me.plugin.cache\nme.plugin.cache.testPlugin.myfunction ();"}],"type":"FunctionDoc","description":"

        Register a plugin.

        ","params":[{"identifier":"plugin","optional":false,"description":"

        Plugin object to instantiate and register

        ","dataType":{"tokens":[{"value":"plugin.BasePlugin","kind":"canonical"},{"value":"plugin.BasePlugin","kind":"link"}],"template":"%1"}},{"identifier":"name","optional":true,"default":"plugin.constructor.name","description":"

        a unique name for this plugin

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

        all extra parameters will be passed to the plugin constructor

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"QTHuRTwLlHk-oy2DaVeFW","name":"pool","brief":"","examples":[{"caption":"","code":"// register our bullet object into the object pool\npool.register(\"bullet\", BulletEntity, true);\n// ...\n// when we need to manually create a new bullet:\nlet bullet = pool.pull(\"bullet\", x, y, direction, velocity);\n// ...\n// when we want to destroy existing object, the remove\n// function will ensure the object can then be reallocated later\ngame.world.removeChild(bullet);"}],"see":["ObjectPool"],"type":"NSDoc","description":"

        a default global ObjectPool instance

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2mvqXFjx3cc73AKzZ8dDg","name":"save","brief":"","examples":[{"caption":"","code":" // Initialize \"score\" and \"lives\" with default values\n // This loads the properties from localStorage if they exist, else it sets the given defaults\n me.save.add({ score : 0, lives : 3 });\n\n // Print all\n // On first load, this prints { score : 0, lives : 3 }\n // On further reloads, it prints { score : 31337, lives : 3, complexObject : ... }\n // Because the following changes will be saved to localStorage\n console.log(JSON.stringify(me.save));\n\n // Save score\n me.save.score = 31337;\n\n // Also supports complex objects thanks to the JSON backend\n me.save.add({ complexObject : {} })\n me.save.complexObject = { a : \"b\", c : [ 1, 2, 3, \"d\" ], e : { f : [{}] } };\n\n // WARNING: Do not set any child properties of complex objects directly!\n // Changes made that way will not save. Always set the entire object value at once.\n // If you cannot live with this limitation, there's a workaround:\n me.save.complexObject.c.push(\"foo\"); // Modify a child property\n me.save.complexObject = me.save.complexObject; // Save the entire object!\n\n // Remove \"lives\" from localStorage\n me.save.remove(\"lives\");"}],"type":"NSDoc","description":"

        allow to access and manage the device localStorage

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"5dvXw-SsP81SNu0IYFp7j","name":"add","brief":"","examples":[{"caption":"","code":"// Initialize \"score\" and \"lives\" with default values\nme.save.add({ score : 0, lives : 3 });\n// get or set the value through me.save\nme.save.score = 1000;"}],"scope":"instance","type":"MethodDoc","description":"

        Add new keys to localStorage and set them to the given default values if they do not exist

        ","params":[{"identifier":"props","optional":false,"description":"

        key and corresponding values

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"fdpHpyBvOn_yTXhh63LDn","name":"remove","brief":"","examples":[{"caption":"","code":"// Remove the \"score\" key from localStorage\nme.save.remove(\"score\");"}],"scope":"instance","type":"MethodDoc","description":"

        Remove a key from localStorage

        ","params":[{"identifier":"key","optional":false,"description":"

        key to be removed

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"MJNzcoutfFkDjX5CCd5m3","name":"state","brief":"","type":"NSDoc","description":"

        a State Manager (state machine)

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"7cMy6gnH8YLGtSIJ4Q_pm","name":"CREDITS","brief":"","defaultValue":"7","scope":"static","type":"PropertyDoc","description":"

        default state ID for Credits Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mrEeGejxRacSunMr7RypN","name":"DEFAULT","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","description":"

        default state ID for the default Stage\n(the default stage is the one running as soon as melonJS is started)

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"whLcCwY0f7wDfGb8pr7hz","name":"GAME_END","brief":"","defaultValue":"5","scope":"static","type":"PropertyDoc","description":"

        default state ID for Game End Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"arU35711Fy_4pLtmfDSsv","name":"GAMEOVER","brief":"","defaultValue":"4","scope":"static","type":"PropertyDoc","description":"

        default state ID for Game Over Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"onOt2zCaudax9djyj9nXu","name":"LOADING","brief":"","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

        default state ID for Loading Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NRnJ4ma2LLDZIMDetTXIn","name":"MENU","brief":"","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

        default state ID for Menu Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3-5QYQRJ5VifaK83J5lwk","name":"PLAY","brief":"","defaultValue":"3","scope":"static","type":"PropertyDoc","description":"

        default state ID for Play Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ym2d9xb0B0XgJvyV0O2bH","name":"READY","brief":"","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

        default state ID for "Ready" Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vO7Y2eT7awG-4nDX0Dw43","name":"SCORE","brief":"","defaultValue":"6","scope":"static","type":"PropertyDoc","description":"

        default state ID for High Score Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Nq0k1asD-QgsyrR_mAey0","name":"SETTINGS","brief":"","defaultValue":"8","scope":"static","type":"PropertyDoc","description":"

        default state ID for Settings Stage

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pdgofx44zd0wzZGcvZjDt","name":"USER","brief":"","defaultValue":"100","examples":[{"caption":"","code":"let STATE_INFO = me.state.USER + 0;\nlet STATE_WARN = me.state.USER + 1;\nlet STATE_ERROR = me.state.USER + 2;\nlet STATE_CUTSCENE = me.state.USER + 3;"}],"scope":"static","type":"PropertyDoc","description":"

        default state ID for user defined constants

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KjnY1XsQCPbOW52nJgsMe","name":"change","brief":"","access":"public","examples":[{"caption":"","code":"// The onResetEvent method on the play screen will receive two args:\n// \"level_1\" and the number 3\nme.state.change(me.state.PLAY, \"level_1\", 3);"}],"scope":"instance","type":"MethodDoc","description":"

        change the game/app state

        ","params":[{"identifier":"state","optional":false,"description":"

        State ID (see constants)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"forceChange","optional":false,"description":"

        if true the state will be changed immediately

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

        extra arguments to be passed to the reset functions

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"kNnDWX4IoCeEL9ypcZJFh","name":"current","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return a reference to the current stage
        \nuseful to call a object specific method

        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"taKEt2BE0vbxvAs81ic7i","name":"isCurrent","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return true if the specified state is the current one

        ","params":[{"identifier":"state","optional":false,"description":"

        State ID (see constants)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        true if the specified state is the current one

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"R0dkh-0PTxVOZNYqCjn02","name":"isPaused","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        Return the pause state of the state manager

        ","params":[],"returns":[{"description":"

        true if the game is paused

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LeGNaLfVniSlX2Jeb0pZk","name":"isRunning","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        return the running state of the state manager

        ","params":[],"returns":[{"description":"

        true if a "process is running"

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"xyyYfPn6rcoCPeKarzSZN","name":"pause","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        pause the current stage

        ","params":[{"identifier":"music","optional":true,"default":"false","description":"

        pause current music track on screen pause

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"cAjptS2231Cnv2NUKc-k3","name":"restart","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        Restart the current stage from a full stop.

        ","params":[{"identifier":"music","optional":true,"default":"false","description":"

        resume current music track on screen resume

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"9eZatjjbNdDEh9I6N_bc8","name":"resume","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        resume the current stage

        ","params":[{"identifier":"music","optional":true,"default":"false","description":"

        resume current music track on screen resume

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"6Og-OiRpNR2EouUUD0MWi","name":"set","brief":"","access":"public","examples":[{"caption":"","code":" class MenuButton extends me.GUI_Object {\n onClick() {\n // Change to the PLAY state when the button is clicked\n me.state.change(me.state.PLAY);\n return true;\n }\n };\n\n class MenuScreen extends me.Stage {\n onResetEvent() {\n // Load background image\n me.game.world.addChild(\n new me.ImageLayer(0, 0, {\n image : \"bg\",\n z: 0 // z-index\n }\n );\n\n // Add a button\n me.game.world.addChild(\n new MenuButton(350, 200, { \"image\" : \"start\" }),\n 1 // z-index\n );\n\n // Play music\n me.audio.playTrack(\"menu\");\n }\n\n onDestroyEvent() {\n // Stop music\n me.audio.stopTrack();\n }\n };\n\n me.state.set(me.state.MENU, new MenuScreen());"}],"scope":"instance","type":"MethodDoc","description":"

        associate the specified state with a Stage

        ","params":[{"identifier":"state","optional":false,"description":"

        State ID (see constants)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"stage","optional":false,"description":"

        Instantiated Stage to associate with state ID

        ","dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}},{"identifier":"start ","optional":true,"default":" false","description":"

        if true the state will be changed immediately after adding it.

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"KQitOzgiNkju8Df534XEu","name":"set","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        returns the stage associated with the specified state\n(or the current one if none is specified)

        ","params":[{"identifier":"state","optional":true,"description":"

        State ID (see constants)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pUfxyq7u4UgrD9v-3_heF","name":"setTransition","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        enable/disable the transition to a particular state (by default enabled for all)

        ","params":[{"identifier":"state","optional":false,"description":"

        State ID (see constants)

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":false,"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"vHd-6aE4xLqtKWOZ_Lw72","name":"stop","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        Stop the current stage.

        ","params":[{"identifier":"pauseTrack","optional":true,"default":"false","description":"

        pause current track on screen stop.

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"P-1tqR-jaL6Zib0LvExb0","name":"transition","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

        specify a global transition effect

        ","params":[{"identifier":"effect","optional":false,"description":"

        (only "fade" is supported for now)

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"color","optional":false,"description":"

        a CSS color value

        ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

        expressed in milliseconds

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"vciC4dr48i63FeKhpBil0","name":"timer","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" after 1000ms\ntimer.setTimeout(myFunction, 1000);\n// set a timer to call \"myFunction\" after 1000ms (respecting the pause state) and passing param1 and param2\ntimer.setTimeout(myFunction, 1000, true, param1, param2);\n// set a timer to call \"myFunction\" every 1000ms\ntimer.setInterval(myFunction, 1000);\n// set a timer to call \"myFunction\" every 1000ms (respecting the pause state) and passing param1 and param2\ntimer.setInterval(myFunction, 1000, true, param1, param2);"}],"see":["Timer"],"type":"NSDoc","description":"

        the default global Timer instance

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2dMeja7usDt6xys_s8swJ","name":"TMXUtils","brief":"","type":"NSDoc","description":"

        a collection of utility functions for parsing TMX maps

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"TzeEzqRAoE5lPSH_Sv8xb","name":"applyTMXProperties","brief":"","type":"FunctionDoc","description":"

        Apply TMX Properties to the given object

        ","params":[{"identifier":"obj","optional":false,"description":"

        object to apply the properties to

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"data","optional":false,"description":"

        TMX data object

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

        obj

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"35u2L6xUyjeQslu5T1cR1","name":"decode","brief":"","type":"FunctionDoc","description":"

        Decode a encoded array into a binary array

        ","params":[{"identifier":"data","optional":false,"description":"

        data to be decoded

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"encoding","optional":true,"default":"\"none\"","description":"

        data encoding ("csv", "base64", "xml")

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        Decoded data

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"U1p7dgKAv5LPWk879G396","name":"decodeBase64AsArray","brief":"","type":"FunctionDoc","description":"

        Decode a base64 encoded string into a byte array

        ","params":[{"identifier":"input","optional":false,"description":"

        Base64 encoded data

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"bytes","optional":true,"default":"1","description":"

        number of bytes per array entry

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        Decoded data

        ","dataType":{"tokens":[{"value":"Uint32Array","kind":"canonical"},{"value":"Uint32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_YzjmmMafybg-r_VD5ibk","name":"decodeCSV","brief":"","type":"FunctionDoc","description":"

        Decode a CSV encoded array into a binary array

        ","params":[{"identifier":"input-","optional":false,"description":"

        CSV formatted data (only numbers, everything else will be converted to NaN)

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        Decoded data

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"QiS9cFJ_lifPm85NHRD9z","name":"decompress","brief":"","type":"FunctionDoc","description":"

        decompress and decode zlib/gzip data

        ","params":[{"identifier":"input","optional":false,"description":"

        Base64 encoded and compressed data

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"format","optional":false,"description":"

        compressed data format ("gzip","zlib", "zstd")

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        Decoded and decompress data

        ","dataType":{"tokens":[{"value":"Uint32Array","kind":"canonical"},{"value":"Uint32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N7EnV5qFJ5WwoQdNw2OCr","name":"parse","brief":"","type":"FunctionDoc","description":"

        Parse a XML TMX object and returns the corresponding javascript object

        ","params":[{"identifier":"xml","optional":false,"description":"

        XML TMX object

        ","dataType":{"tokens":[{"value":"Document","kind":"canonical"},{"value":"Document","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        Javascript object

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"krvboVf50aiWOaP51MLlI","name":"setInflateFunction","brief":"","type":"FunctionDoc","description":"

        set the function used to inflate gzip/zlib data

        ","params":[{"identifier":"fn","optional":false,"description":"

        inflate function

        ","dataType":{"tokens":[{"value":"Func","kind":"canonical"},{"value":"Func","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"VWanJgJMO4X4XN6kDlVV4","name":"utils","brief":"","defaultValue":"\"\"","type":"NSDoc","description":"

        a collection of utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"tWu05cH0sPoYZDhxD5mME","name":"agent","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of utility functons to ease porting between different user agents.

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"lW8GGBDPryzYk73uRB6YY","name":"prefixed","brief":"","access":"public","type":"FunctionDoc","description":"

        Get a vendor-prefixed property

        ","params":[{"identifier":"name","optional":false,"description":"

        Property name

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"obj","optional":true,"default":"globalThis","description":"

        Object or element reference to access

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

        Value of property

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"J2sEDJOtwrjfVwhfcTtRs","name":"setPrefixed","brief":"","access":"public","type":"FunctionDoc","description":"

        Set a vendor-prefixed property

        ","params":[{"identifier":"name","optional":false,"description":"

        Property name

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

        Property value

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"obj","optional":true,"default":"globalThis","description":"

        Object or element reference to access

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

        true if one of the vendor-prefixed property was found

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"XpZ9ouoaK1PttOcqtoMmS","name":"array","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of array utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"E980ymVDZMY-p3uxVMmns","name":"random","brief":"","access":"public","examples":[{"caption":"","code":"// Select a random array element\nlet arr = [ \"foo\", \"bar\", \"baz\" ];\nconsole.log(me.utils.array.random(arr));"}],"type":"FunctionDoc","description":"

        return a random array element

        ","params":[{"identifier":"arr","optional":false,"description":"

        array to pick a element

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"returns":[{"description":"

        random member of array

        ","dataType":{"tokens":[{"value":"any","kind":"canonical"}],"template":"any"}}],"extends":[],"implements":[]},{"id":"WJWCefJvEBPjjjGSwBgoL","name":"remove","brief":"","access":"public","type":"FunctionDoc","description":"

        Remove the specified object from the given Array

        ","params":[{"identifier":"arr","optional":false,"description":"

        array from which to remove an object

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}},{"identifier":"obj","optional":false,"description":"

        to be removed

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

        the modified Array\nlet arr = [ "foo", "bar", "baz" ];\n// remove "foo" from the arr...","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"extends":[],"implements":[]},{"id":"hGYLz-dKDdhiLIfijeD2C","name":"weightedRandom","brief":"","access":"public","type":"FunctionDoc","description":"

        return a weighted random array element, favoring the earlier entries

        ","params":[{"identifier":"arr","optional":false,"description":"

        array to pick a element

        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"returns":[{"description":"

        random member of array

        ","dataType":{"tokens":[{"value":"any","kind":"canonical"}],"template":"any"}}],"extends":[],"implements":[]}]},{"id":"_01t3dlfLONmNXHrbamFb","name":"file","brief":"","defaultValue":"undefined","readonly":true,"scope":"static","type":"NSDoc","description":"

        a collection of file utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"-K5KWnuWEpDTPu5vsWNq0","name":"getBasename","brief":"","access":"public","type":"FunctionDoc","description":"

        return the base name of the file without path info

        ","params":[{"identifier":"path","optional":false,"description":"

        path containing the basename to extract

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        the base name without path information.

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"2cBBTlEJIB6rQQRDtZcE8","name":"getExtension","brief":"","access":"public","type":"FunctionDoc","description":"

        return the extension of the file in the given path

        ","params":[{"identifier":"path","optional":false,"description":"

        path containing the filename and extension to extract

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        filename extension.

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"g5t9hSNQnw7UAdo9xiJbn","name":"getPath","brief":"","access":"public","type":"FunctionDoc","description":"

        return the path of the file

        ","params":[{"identifier":"path","optional":false,"description":"

        the copmplete file path to extract the path from

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        the extracted path

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"QZJYOTuBZC9eQl1LTpqfS","name":"function","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"2bVSUhpUsg-5WoIMNXJAJ","name":"defer","brief":"","access":"public","examples":[{"caption":"","code":"// execute myFunc() when the stack is empty,\n// with the current context and [1, 2, 3] as parameter\nme.utils.function.defer(myFunc, this, 1, 2, 3);"}],"type":"FunctionDoc","description":"

        Executes a function as soon as the interpreter is idle (stack empty).

        ","params":[{"identifier":"func","optional":false,"description":"

        The function to be deferred.

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":false,"description":"

        The value to be passed as the this parameter to the target function when the deferred function is called

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"args","optional":false,"variadic":true,"description":"

        Optional additional arguments to carry for the function.

        ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

        id that can be used to clear the deferred function using\nclearTimeout

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"idhZQRGe9HRpv-vaB2gPs","name":"throttle","brief":"","access":"public","type":"FunctionDoc","description":"

        returns a function that, when invoked will only be triggered at most once during a given window of time

        ","params":[{"identifier":"fn","optional":false,"description":"

        the function to be throttled.

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

        The delay in ms

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"no_trailing","optional":false,"description":"

        disable the execution on the trailing edge

        ","dataType":{"tokens":[{"value":"no_trailing","kind":"canonical"},{"value":"no_trailing","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

        the function that will be throttled

        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"extends":[],"implements":[]}]},{"id":"dK4eSMBckxw7aYFV7QgNn","name":"string","brief":"","scope":"static","type":"NSDoc","description":"

        a collection of string utility functions

        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Lm7oZaMBnnN-apL62zwlM","name":"capitalize","brief":"","access":"public","type":"FunctionDoc","description":"

        converts the first character of the given string to uppercase

        ","params":[{"identifier":"str","optional":false,"description":"

        the string to be capitalized

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        the capitalized string

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"Di6fFsDuQbTGDIRBNVZb2","name":"isBoolean","brief":"","access":"public","type":"FunctionDoc","description":"

        returns true if the given string contains a true or false

        ","params":[{"identifier":"str","optional":false,"description":"

        the string to be tested

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        true if the string is either true or false

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Y-iQtF-nOESG9NYYnaMqa","name":"isDataUrl","brief":"","access":"public","type":"FunctionDoc","description":"

        returns true if the given string is a data url in the data:[<mediatype>][;base64],<data> format.\n...","params":[{"identifier":"str","optional":false,"description":"

        the string (url) to be tested

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        true if the string is a data url

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"r5isB6uWmyXAuh8XquuHi","name":"isNumeric","brief":"","access":"public","type":"FunctionDoc","description":"

        returns true if the given string contains a numeric integer or float value

        ","params":[{"identifier":"str","optional":false,"description":"

        the string to be tested

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        true if string contains only digits

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PTY2PsNU8izUgL8fXG86J","name":"toHex","brief":"","access":"public","type":"FunctionDoc","description":"

        convert a string to the corresponding hexadecimal value

        ","params":[{"identifier":"str","optional":false,"description":"

        the string to be converted

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        the converted hexadecimal value

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"TYp5V07tx7yLWqDSbmg-M","name":"checkVersion","brief":"","access":"public","examples":[{"caption":"","code":"if (me.utils.checkVersion(\"7.0.0\") > 0) {\n console.error(\n \"melonJS is too old. Expected: 7.0.0, Got: 6.3.0\"\n );\n}"}],"type":"FunctionDoc","description":"

        Compare two version strings

        ","params":[{"identifier":"first","optional":false,"description":"

        First version string to compare

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"second","optional":false,"description":"

        second version string to compare

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        comparison result
        < 0 : first < second
        \n0 : first == second
        \n> 0 : first > second

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Qubv3FB_dNTFdecMT0NCv","name":"getUriFragment","brief":"","access":"public","examples":[{"caption":"","code":"// http://www.example.com/index.html#debug&hitbox=true&mytag=value\nlet UriFragment = me.utils.getUriFragment();\nconsole.log(UriFragment[\"mytag\"]); //> \"value\""}],"type":"FunctionDoc","description":"

        parse the fragment (hash) from a URL and returns them into

        ","params":[{"identifier":"url","optional":true,"default":"document.location","description":"

        an optional params string or URL containing fragment (hash) params to be parsed

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

        an object representing the deserialized params string.

        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[],"members":[{"id":"LIpMC6t7hm4HGGqNzy5wc","name":"debug","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        display the debug panel (if preloaded)

        "},{"id":"MQ1kpWTGQQszOe1BUdEKU","name":"debugToggleKey","brief":"","access":"public","defaultValue":"\"s\"","scope":"static","type":"PropertyDoc","description":"

        show/hide the debug panel (if preloaded)

        "},{"id":"MpDUWhnnttwIvMbOvhAaY","name":"hitbox","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        draw the hitbox in the debug panel (if enabled)

        "},{"id":"S0qqxI-S2z4FNd4y-8ZfW","name":"quadtree","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        draw the quadtree in the debug panel (if enabled)

        "},{"id":"NrtZjkROIGZaSHbdHiRC9","name":"velocity","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        draw the entities velocity in the debug panel (if enabled)

        "},{"id":"wFQ8LYBI4YWHkcQRKNZaZ","name":"webgl","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        force the renderer to WebGL

        "}]}]},{"id":"wGZk67tajM6kc8wGwMxIo","name":"video","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"5GKS0t3gY4Cwy7i0MGE6e","name":"renderer","brief":"","defaultValue":"undefined","type":"PropertyDoc","description":"

        A reference to the active Canvas or WebGL active renderer renderer

        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QgLQMdiciznlAiaB1L1z1","name":"createCanvas","brief":"","type":"FunctionDoc","description":"

        Create and return a new Canvas element

        ","params":[{"identifier":"width","optional":false,"description":"

        width

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

        height

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"returnOffscreenCanvas","optional":true,"default":"false","description":"

        will return an OffscreenCanvas if supported

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

        a new Canvas element of the given size

        ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"bH8o6RiGoSo9jKzK2YeaA","name":"getParent","brief":"","type":"FunctionDoc","description":"

        return a reference to the parent DOM element holding the main canvas

        ","params":[],"returns":[{"description":"

        the HTML parent element

        ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LFkREeNYz3FPshs04qY9a","name":"init","brief":"","examples":[{"caption":"","code":"// init the video with a 640x480 canvas\nme.video.init(640, 480, {\n parent : \"screen\",\n renderer : me.video.AUTO,\n scale : \"auto\",\n scaleMethod : \"fit\"\n});"}],"type":"FunctionDoc","description":"

        Initialize the "video" system (create a canvas based on the given arguments, and the related renderer).

        ","params":[{"identifier":"width","optional":false,"description":"

        The width of the canvas viewport

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

        The height of the canvas viewport

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

        optional parameters for the renderer

        ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

        false if initialization failed (canvas not supported)

        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"9Hkg-yjDGgfuhR1YZ623X","name":"Application","brief":"","see":["game"],"type":"ClassDoc","description":"

        An Application represents a single melonJS game, and is responsible for updating (each frame) all the related object statu...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"E9IPteqm_nhw4bCEoSqX-","name":"Settings","brief":"","see":["Application"],"type":"TypedefDoc","description":"

        Application & Renderer Settings definition.

        ","params":[{"identifier":"options.zoomX","optional":true,"default":"width","description":"

        The actual width of the canvas with scaling applied

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.zoomY","optional":true,"default":"height","description":"

        The actual height of the canvas with scaling applied

        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.compositor","optional":true,"description":"

        a custom compositor class (WebGL only)

        ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}},{"identifier":"option.physic","optional":true,"default":"\"builtin\"","description":"

        the physic system to use (default: "builtin", or "none" to disable builtin physic)

        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[],"members":[{"id":"QKuYmboR-8wvOKD7psS6a","name":"antiAlias","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        whether to enable or not video scaling interpolation

        "},{"id":"-wtBD9u5iJI24U6hIEhC0","name":"consoleHeader","brief":"","access":"public","defaultValue":"true","scope":"static","type":"PropertyDoc","description":"

        whether to display melonJS version and basic device information in the console

        "},{"id":"ZjlJzRLAVyGjpW_YuPaBd","name":"depthTest","brief":"","access":"public","defaultValue":"\"sorting\"","scope":"static","type":"PropertyDoc","description":"

        ~Experimental~ the default method to sort object on the z axis in WebGL

        "},{"id":"1GUe8HH9c9qpb1xAlKTAU","name":"parent","brief":"","access":"public","defaultValue":"document.body","scope":"static","type":"PropertyDoc","description":"

        the DOM parent element to hold the canvas in the HTML file

        "},{"id":"HUC7s7xd1lGwAWMDXrWTC","name":"powerPreference","brief":"","access":"public","defaultValue":"\"default\"","scope":"static","type":"PropertyDoc","description":"

        a hint to the user agent indicating what configuration of GPU is suitable for the WebGL context. To be noted that Safari a..."},{"id":"iMdUDxNQJpqFMdoepzqNK","name":"preferWebGL1","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

        if true the renderer will only use WebGL 1

        "},{"id":"5pVRsbkVAb0bMXgTS_oY7","name":"renderer","brief":"","access":"public","defaultValue":"AUTO","scope":"static","type":"PropertyDoc","description":"

        renderer to use (CANVAS, WEBGL, AUTO), or a custom renderer class

        "},{"id":"0J4HQFtLZEWfZhUpW8mCM","name":"scale","brief":"","access":"public","defaultValue":"1.0","scope":"static","type":"PropertyDoc","description":"

        enable scaling of the canvas ('auto' for automatic scaling)

        "},{"id":"tZWOfioz_xGQufhULiWgF","name":"scaleMethod","brief":"","access":"public","defaultValue":"\"fit\"","scope":"static","type":"PropertyDoc","description":"

        screen scaling modes :

        \n
          \n
        • fit : Letterboxed; content is scaled to design aspect ..."},{"id":"giBMvURiSJy3d6uou4ihl","name":"scaleTarget","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          the HTML Element to be used as the reference target when using automatic scaling (by default melonJS will use the parent c..."},{"id":"u0vnqDU1pBX0m6Ssr-XEr","name":"transparent","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

          whether to allow transparent pixels in the front buffer (screen).

          "}]},{"id":"IszwdEVl4VuLY0cHcfgU3","name":"isInitialized","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          true when this app instance has been initialized

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JJ65rhtSDYMWPVe-26L2e","name":"lastUpdate","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

          Last time the game update loop was executed.
          \nUse this value to implement frame prediction in drawing events,\nfor crea...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ip841X5Lpifwhy7YKH8x5","name":"mergeGroup","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          when true, all objects will be added under the root world container.
          \nWhen false, a me.Container object wi...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"51X5xjnRFD_q5mxXSM4n7","name":"parentElement","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the parent HTML element holding the main canvas of this application

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1uyeuD-GwfqsPEQSsJdPM","name":"pauseOnBlur","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// keep the default game instance running even when loosing focus\nme.game.pauseOnBlur = false;"}],"scope":"instance","type":"PropertyDoc","description":"

          Specify whether to pause this app when losing focus

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4ezSwBC8eN3TEtmoUAWc2","name":"renderer","brief":"","scope":"instance","type":"PropertyDoc","description":"

          a reference to the active Canvas or WebGL active renderer renderer

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fkwRvopKasSt_LB91NOMX","name":"resumeOnFocus","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          Specify whether to unpause this app when gaining back focus

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jv95FORAPGkcbh0_7RWAD","name":"settings","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the given settings used when creating this application

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8EZpdgwwpJhqZ5HPRJHOH","name":"sortOn","brief":"","scope":"instance","see":["World.sortOn"],"type":"PropertyDoc","description":"

          Specify the property to be used when sorting renderables for this application game world.\nAccepted values : "x",...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vH94sZgPC8fypgKWpYAAD","name":"stopOnBlur","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Specify whether to stop this app when losing focus

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W4BzcP9nQJ8gAoafPpkyj","name":"viewport","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the active stage "default" camera

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DtMJNgkCVgLGe-popkm0s","name":"world","brief":"","scope":"instance","type":"PropertyDoc","description":"

          a reference to the game world,
          \na world is a virtual environment containing all the game objects

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r5Q0UyCWIR9ysIsXulZmv","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"width","optional":false,"description":"

          The width of the canvas viewport

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          The height of the canvas viewport

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

          The optional parameters for the application and default renderer

          ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YgB6Mke0pTFgVf6gg9FP3","name":"draw","brief":"

          draw the active scene/stage associated to this game

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yydqBvQeMcg_HP5ejt5CS","name":"getParentElement","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns the parent HTML Element holding the main canvas of this application

          ","params":[],"returns":[{"description":"

          the parent HTML element

          ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wYqzhEs1mQAlFUMScjv2j","name":"init","brief":"","scope":"instance","type":"MethodDoc","description":"

          init the game instance (create a physic world, update starting time, etc..)

          ","params":[{"identifier":"width","optional":false,"description":"

          The width of the canvas viewport

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          The height of the canvas viewport

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

          The optional parameters for the application and default renderer

          ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0pJKDI8EokSLJ1KOrlZN5","name":"onLevelLoaded","brief":"","examples":[{"caption":"","code":"// call myFunction () everytime a level is loaded\nme.game.onLevelLoaded = this.myFunction.bind(this);"}],"scope":"instance","type":"MethodDoc","description":"

          Fired when a level is fully loaded and all renderable instantiated.
          \nAdditionnaly the level id will also be passed to ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dQDcbWeQiS4pxGI-68KPg","name":"repaint","brief":"

          force the redraw (not update) of all objects

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zHNT0pwsameeD2Jqi1Iuj","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

          reset the game Object manager\ndestroy all current objects

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zOEWORneM0YfpfRZGhbOk","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

          update all objects related to this game active scene/stage

          ","params":[{"identifier":"time","optional":false,"description":"

          current timestamp as provided by the RAF callback

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LUqtyMcgf-NJ6Elk7H8yq","name":"updateFrameRate","brief":"","scope":"instance","see":["timer.maxfps","World.fps"],"type":"MethodDoc","description":"

          Update the renderer framerate using the system config variables.

          ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"J-Ti9DHLkrkoApmQ8yvIF","name":"BitmapText","brief":"","type":"ClassDoc","description":"

          a bitmap font object

          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"goYTFf3qUminayjg7Mzxj","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

          Define the renderable opacity
          \nSet to zero if you do not wish an object to be drawn

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5kUxI_M8g9xFTUpL7_DUc","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether the renderable object will always update, even when outside of the viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q6nju119CCUse2jUDw6a-","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

          a reference to the parent object that contains this renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jbpu_hdFuwOpcXW2Uail7","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

          The anchor point is used for attachment behavior, and/or when applying transformations.
          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UTtCpAlCH-Ck_PI5T-Mhu","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MYduAkOP2Rmt_dNrDiiam","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AY_9DErwcPHXcMA9LeFRA","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

          the renderable physic body

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GdRxkUHN8ltXJ3NKYTSOy","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FNvrxOR6TrWLvU4lo_xHl","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

          absolute center of this rectangle on the horizontal axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KCqW0nY36FdFSNwrLSiFU","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

          absolute center of this rectangle on the vertical axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Aa5MeAJtVF3Fj4DwJgFqG","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the renderable default transformation matrix

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"03OsgUoRCEf5J2KKTvrlM","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the depth of this renderable on the z axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W0UAJ6i-lHPPxDQTdl5Ss","name":"fillStyle","brief":"","access":"public","scope":"instance","see":["Renderable#tint"],"type":"PropertyDoc","description":"

          defines the color used to tint the bitmap text

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2TSHDhUtGVJJyK1bfxBP6","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7DP4oBi-YQWI1h61RCv9H","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

          (G)ame (U)nique (Id)entifier"
          \na GUID will be allocated for any renderable object added
          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4XZpVJkNjTxANzIbauReM","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          height of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UspuiyuZQArDxqAgEJ6KW","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether the renderable object is visible and within the viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfi6Bjr0nrphKOU7NqHog","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          when true the renderable will be redrawn during the next update cycle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1k_-n7g6Z67x50EiOnvCo","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

          returns true if this renderable is flipped on the horizontal axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XTlJ_SMQOd0fwLuygCOKl","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

          returns true if this renderable is flipped on the vertical axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e5ExpqR4mc9wYXD7vNGWW","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RfkNjOI8TQLBe0eMPPQEH","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          If true then physic collision and input events will not impact this renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AKReMxDWQ3olQFA8xuxTr","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          make the renderable object persistent over level changes

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aP7Q2wHA-PRQnlcsU_lir","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

          left coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5vuSdqPtwDoHvfxJoijlC","name":"lineHeight","brief":"","access":"public","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

          Set the line spacing height (when displaying multi-line strings).
          \nCurrent font height will be multiplied with this va...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZorT61IcCPZCCquWDvbJ-","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XdX2au9XkHPX42qhrISHt","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

          The name of the renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-4N3HbXjh8RfCV6hlEZdA","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

          an event handler that is called when the renderable leave or enter a camera viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JVY2w8O_eZmYmaO-ZWxqy","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

          Array of points defining the Polygon
          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z_8iIteJiwBoI02SRwLfU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Position of the Renderable relative to its parent container

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tH35nldjFoLr7SEsRsQLv","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

          right coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fR47_0CPuqL67jFr2B2mA","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vj_nnZJhfvdBG0Sf40CTc","name":"textAlign","brief":"","access":"public","defaultValue":"\"left\"","scope":"instance","type":"PropertyDoc","description":"

          Set the default text alignment (or justification),
          \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PJOmD9IYPxgSyR6byIJE4","name":"textBaseline","brief":"","access":"public","defaultValue":"\"top\"","scope":"instance","type":"PropertyDoc","description":"

          Set the text baseline (e.g. the Y-coordinate for the draw operation),
          \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5XCmnqLurCFTpRUvZ3ALF","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SnPXirzFCdjx2yvfxLB2J","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

          top coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LmnL3E0WCOCKSFDefnNZf","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

          the shape type (used internally)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kAw1E9dtqUI49Hzg5NAuO","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether to update this object when the game is paused.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eu9edwZV4CgLPvEahpwai","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HUciJI3N1HP78lVXdrXlm","name":"wordWrapWidth","brief":"","access":"public","defaultValue":"-1","scope":"instance","type":"PropertyDoc","description":"

          the maximum length in CSS pixel for a single segment of text.\n(use -1 to disable word wrapping)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_WDIRGPrNCTx9UDoQ3jAw","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          the text to be displayed

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ruHpfFDizprhHONccpJ2D","name":"fontData","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          font data

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CT4RGj5VRq55LRzyc4W_j","name":"fontImage","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          font image

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H4LTNe-x9tQ2cxPLkH0Ae","name":"fontScale","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

          scaled font size

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rbxlr7a8Zdzhs6UhK10BW","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the angle to the specified target

          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          angle in radians

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vYWXhsm6-VZLzH2ZZgf3S","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

          center the rectangle position around the given coordinates

          ","params":[{"identifier":"x","optional":false,"description":"

          the x coordinate around which to center this rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the y coordinate around which to center this rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tUjy99-pOkBTuXiom65ft","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

          clone this rectangle

          ","params":[],"returns":[{"description":"

          new rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_72-S6KEecELqQ0rmntPE","name":"constructor","brief":"","examples":[{"caption":"","code":"// Use me.loader.preload or me.loader.load to load assets\nme.loader.preload([\n { name: \"arial\", type: \"binary\" src: \"data/font/arial.fnt\" },\n { name: \"arial\", type: \"image\" src: \"data/font/arial.png\" },\n])\n// Then create an instance of your bitmap font:\nlet myFont = new me.BitmapText(x, y, {font:\"arial\", text:\"Hello\"});\n// two possibilities for using \"myFont\"\n// either call the draw function from your Renderable draw function\nmyFont.draw(renderer, \"Hello!\", 0, 0);\n// or just add it to the word container\nme.game.world.addChild(myFont);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

          position of the text object

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          position of the text object

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

          the text configuration

          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.font","description":"

          a font name to identify the corresponing source image

          ","dataType":{"tokens":[{"value":"string | Image","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"string | %1"}},{"identifier":"settings.fontData","optional":true,"default":"settings.font","description":"

          the bitmap font data corresponding name, or the bitmap font data itself

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","optional":true,"description":"

          size a scaling ratio

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.fillStyle","optional":true,"description":"

          a CSS color value used to tint the bitmapText (@see BitmapText.tint)

          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.lineWidth","optional":true,"default":"1","description":"

          line width, in pixels, when drawing stroke

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.textAlign","optional":true,"default":"\"left\"","description":"

          horizontal text alignment

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"top\"","description":"

          the text baseline

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.lineHeight","optional":true,"default":"1.0","description":"

          line spacing height

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.0, y:0.0}","description":"

          anchor point to draw the text at

          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.wordWrapWidth","optional":true,"description":"

          the maximum length in CSS pixel for a single segment of text

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"description":"

          a string, or an array of strings

          ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"SNPzpwfeye6lTM-8sdbkg","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

          Returns true if the rectangle contains the given point or rectangle

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point, or a rectangle to test

          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

          y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          True if the rectangle contain the given point or rectangle, otherwise false

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3OrEOo6Fr0PJyPt1HgkzV","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

          copy the position and size of the given rectangle into this one

          ","params":[{"identifier":"rect","optional":false,"description":"

          Source rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          new rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mLMrFfTvtgdpy6ujPQ4Wb","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the distance to the specified target

          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          distance

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CmezfpMgB1MHFibuhgtTw","name":"draw","brief":"","scope":"instance","type":"MethodDoc","description":"

          draw the bitmap font

          ","params":[{"identifier":"renderer","optional":false,"description":"

          Reference to the destination renderer instance

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vIBV9UIEVUSYmMQfcxI2C","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if this rectangle is identical to the specified one

          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          true if equals

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"2euZWavCnMxqCz6IYEOwS","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

          flip the renderable on the horizontal axis (around the center of the renderable)

          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

          true to flip this renderable.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"81GOZDi4tQ6IpQKKmA1y9","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

          flip the renderable on the vertical axis (around the center of the renderable)

          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

          true to flip this renderable.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WoAtnDju0RNBnwGZr70oa","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the renderable absolute position in the game world

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GDhKDb_G6AimsO8MYCAdj","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns the bounding box for this renderable

          ","params":[],"returns":[{"description":"

          bounding box Rectangle object

          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kf3OC6Eh5gHOdCpVwExDv","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns a list of indices for all triangles defined in this polygon

          ","params":[],"returns":[{"description":"

          an array of vertex indices for all triangles forming this polygon.

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Kbf3eW-qVyKYmxyDTwshx","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

          get the renderable alpha channel value

          ","params":[],"returns":[{"description":"

          current opacity value between 0 and 1

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dRtaIwDhv0Nojt5nYp5ou","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

          ","params":[],"returns":[{"description":"

          true if the vertices are convex, false if not, null if not computable

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"cnNfPcNCSp3DBlYQCwbrb","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

          determines whether all coordinates of this rectangle are finite numbers.

          ","params":[],"returns":[{"description":"

          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"nYr9Fd_S7Y-Ext5itQYIS","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

          Rotate this renderable towards the given target.

          ","params":[{"identifier":"target","optional":false,"description":"

          the renderable or position to look at

          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZuijG_Fqp7UcyKZ5zzSeh","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

          measure the given text size in pixels

          ","params":[{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

          a TextMetrics object with two properties: width and height, defining the output dimensions

          ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DH5yYYo_cZJqjYm1Bp5OJ","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

          ","params":[{"identifier":"response","optional":false,"description":"

          the collision response object

          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

          the other renderable touching this one (a reference to response.a or response.b)

          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

          true if the object should respond to the collision (its position and velocity will be corrected)

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pV6w7Uqre8xFFX-fPmQ_X","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

          OnDestroy Notification function
          \nCalled by engine before deleting the object

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yb7l4w1pnn8u1wYotSCpV","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if this rectangle is intersecting with the specified one

          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          true if overlaps

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"m0N-0xHRWgcWh2zhnmttm","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

          restore the rendering context after drawing (automatically called by melonJS).

          ","params":[{"identifier":"renderer","optional":false,"description":"

          a renderer object

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"ih9lJPnNaLaSuvtikYhJo","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

          a renderer object

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"2AxBfXzCz2SSzV3WzTOQ8","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m-Bp1hAlVCFd_OzFq4TEg","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

          change the font display size

          ","params":[{"identifier":"scale","optional":false,"description":"

          ratio

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this object for chaining

          ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GyBi9_MUVvnqXtSm9nSNh","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

          Rotate this renderable by the specified angle (in radians).

          ","params":[{"identifier":"angle","optional":false,"description":"

          The angle to rotate (in radians)

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

          an optional point to rotate around

          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PTZUz7ldCJgEjitk5yQOH","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

          a number representing the abscissa of the scaling vector.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

          a number representing the ordinate of the scaling vector.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A6VNMJUnCka8y2I0JoDmW","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

          scale the renderable around his anchor point

          ","params":[{"identifier":"v","optional":false,"description":"

          scaling vector

          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GiUXTZBvNMElMDN43MUVZ","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

          change the font settings

          ","params":[{"identifier":"textAlign","optional":false,"description":"

          ("left", "center", "right")

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"scale","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this object for chaining

          ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DcVRXF_kSWmn8zJrF_Qwo","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the renderable alpha channel value

          ","params":[{"identifier":"alpha","optional":false,"description":"

          opacity value between 0.0 and 1.0

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zUM7m-s85bt7zmN-GYgmQ","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

          set new value to the rectangle shape

          ","params":[{"identifier":"x","optional":false,"description":"

          position of the Rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          position of the Rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

          width of the rectangle, or an array of vector defining the rectangle

          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

          height of the rectangle, if a numeral width parameter is specified

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uWwDlKlaFnXFQ6n5NuMTj","name":"setText","brief":"","scope":"instance","type":"MethodDoc","description":"

          change the text to be displayed

          ","params":[{"identifier":"value","optional":false,"default":"\"\"","description":"

          a string, or an array of strings

          ","dataType":{"tokens":[{"value":"number | string | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | string | %2"}}],"returns":[{"description":"

          this object for chaining

          ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cD8rxsUwWmjcLbN_lXP7T","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the vertices defining this Polygon

          ","params":[{"identifier":"vertices","optional":false,"description":"

          array of vector or vertice defining the Polygon

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

          this instance for objecf chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q6uXQCPSln2iY0PBMBC9q","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          Shifts the Polygon to the given position vector.

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to shift to

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Kuq23Zn5rx00somoh4RH6","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

          apply a 2d projection to this shapen

          ","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"It-VPANr0_v4q3uOdmG7Q","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

          apply an isometric projection to this shape

          ","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oROD-lSWd_iOix3DRqKlt","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns a polygon whose edges are the same as this box.

          ","params":[],"returns":[{"description":"

          a new Polygon that represents this rectangle.

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VixYQSQyk5iH-mNOwKK0W","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

          multiply the renderable currentTransform with the given matrix

          ","params":[{"identifier":"m","optional":false,"description":"

          the transformation matrix

          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Xy9Zi6_A6gyWQbnpRxON_","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          translate the Polygon by the specified offset

          ","params":[{"identifier":"x","description":"

          x offset or a vector point to translate by

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

          y offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VqV8dYTTc6loMqgRDG7E1","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

          merge this rectangle with another one

          ","params":[{"identifier":"rect","optional":false,"description":"

          other rectangle to union with

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          the union(ed) rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QWA4jD3LMRVAyPYXEwlHl","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

          update function (automatically called by melonJS).

          ","params":[{"identifier":"dt","optional":false,"description":"

          time since the last update in milliseconds.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          true if the renderable is dirty

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QJS7yrLY7b23gbL6lgaQx","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          update the bounding box for this Bitmap Text.

          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

          update the bounds size and position in (world) absolute coordinates

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          this Bitmap Text bounding box Rectangle object

          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GrJeMV_oiV27229QKgEb_","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

          called when the anchor point value is changed

          ","params":[{"identifier":"x","optional":false,"description":"

          the new X value to be set for the anchor

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the new Y value to be set for the anchor

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"S_ywyCWr4Ckb9vtnTWU2U","name":"Body","brief":"","see":["Renderable.body"],"type":"ClassDoc","description":"

          a Generic Physic Body Object with some physic properties and behavior functionality, to add as a member of a Renderable.

          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"dbyHxpObkPcifeHq-v88P","name":"ancestor","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

          a reference to the parent object that contains this body,\nor undefined if it has not been added to one.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ly0rqGsvYboHL4hWSwSEi","name":"bounce","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

          the body bouciness level when colliding with other solid bodies :\na value of 0 will not bounce, a value of 1 will fully re...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2bzpIDYE3GuDiiOBz4T6H","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          The AABB bounds box reprensenting this body

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1vRagiElbKIsKj_Ubnj9L","name":"collisionType","brief":"","access":"public","defaultValue":"collision.types.ENEMY_OBJECT","examples":[{"caption":"","code":"// set the body collision type\nbody.collisionType = me.collision.types.PLAYER_OBJECT;"}],"scope":"instance","see":["collision.types"],"type":"PropertyDoc","description":"

          define the collision type of the body for collision filtering

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ryVsVTZMODI_fmebDSWJB","name":"falling","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

          falling state of the body
          \ntrue if the object is falling
          \nfalse if the object is standing on something

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hoy1F6Gho5MVO8PRre4Xq","name":"force","brief":"","access":"public","defaultValue":"<0,0>","examples":[{"caption":"","code":" // define a default maximum acceleration, initial force and friction\n this.body.force.set(1, 0);\n this.body.friction.set(0.4, 0);\n this.body.setMaxVelocity(3, 15);\n\n // apply a postive or negative force when pressing left of right key\n update(dt) {\n if (me.input.isKeyPressed(\"left\")) {\n this.body.force.x = -this.body.maxVel.x;\n } else if (me.input.isKeyPressed(\"right\")) {\n this.body.force.x = this.body.maxVel.x;\n }\n }"}],"scope":"instance","see":["Body.setMaxVelocity"],"type":"PropertyDoc","description":"

          body force to apply to this the body in the current step.\n(any positive or negative force will be cancelled after every wo...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfiezSLUPBALf7owU9blW","name":"friction","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","type":"PropertyDoc","description":"

          body friction

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nJMJ8eiEux940IEKEu2OE","name":"gravityScale","brief":"","access":"public","defaultValue":"1.0","scope":"instance","see":["World.gravity"],"type":"PropertyDoc","description":"

          The degree to which this body is affected by the world gravity

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3kDK2Jrqf0KZAiu685-2","name":"ignoreGravity","brief":"","access":"public","defaultValue":"false","scope":"instance","see":["World.gravity"],"type":"PropertyDoc","description":"

          If true this body won't be affected by the world gravity

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7olqOAW11u9aw2FlivG8F","name":"isStatic","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

          Either this body is a static body or not.\nA static body is completely fixed and can never change position or angle.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"21aKJnhungcci0R_bGt1-","name":"jumping","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

          jumping state of the body
          \nequal true if the body is jumping

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ul3vGUCaz5sMZ8QByR0-8","name":"mass","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

          the body mass

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0KX6XBsf1uMyEm1caOtmw","name":"maxVel","brief":"","access":"public","defaultValue":"<490,490>","scope":"instance","type":"PropertyDoc","description":"

          max velocity (to limit body velocity)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yGibHRnWQ0jMyfXCk5LVx","name":"vel","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","see":["Body.force"],"type":"PropertyDoc","description":"

          The current velocity of the body.\nSee to apply a force if you need to modify a body velocity

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AeOxpeQS92GjC4Pd6Ma6h","name":"addShape","brief":"","examples":[{"caption":"","code":"// add a rectangle shape\nthis.body.addShape(new me.Rect(0, 0, image.width, image.height));\n// add a shape from a JSON object\nthis.body.addShape(me.loader.getJSON(\"shapesdef\").banana);"}],"scope":"instance","type":"MethodDoc","description":"

          add a collision shape to this body
          \n(note: me.Rect objects will be converted to me.Polygon before being added)

          ","params":[{"identifier":"shape","optional":false,"description":"

          a shape or JSON object

          ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse | Point | Array | Bounds | object","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"},{"value":"Point","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6<%7> | %8 | object"}}],"returns":[{"description":"

          the shape array length

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iALs43J_vxGDkoE41ZSdm","name":"addVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

          add the given vertices to the body shape

          ","params":[{"identifier":"vertices","optional":false,"description":"

          an array of me.Vector2d points defining a convex hull

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"index","optional":true,"default":"0","description":"

          the shape object for which to set the vertices

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"GEXGKVM-NcDCYvQmEM0zX","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"ancestor","optional":false,"description":"

          the parent object this body is attached to

          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"shapes","optional":true,"description":"

          a initial shape, list of shapes, or JSON object defining the body

          ","dataType":{"tokens":[{"value":"Rect | Array | Polygon | Array | Line | Array | Ellipse | Array | Point | Array | Bounds | Array | object","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"},{"value":"Point","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Bounds","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1 | %3<%2> | %4 | %5<%6> | %7 | %8<%9> | %10 | %11<%12> | %13 | %14<%15> | %16 | %17<%18> | object"}},{"identifier":"onBodyUpdate","optional":true,"description":"

          callback for when the body is updated (e.g. add/remove shapes)

          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"sAoqN6hGO4yyEhS1vISxE","name":"contains","brief":"","examples":[{"caption":"","code":"if (mySprite.body.contains(10, 10)) {\n // do something\n}\n// or\nif (mySprite.body.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

          Returns true if the any of the shape composing the body contains the given point.

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to check

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

          y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          true if contains

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3iisD_8kICWhCbBezXnuC","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all shapes of the physic body\nmySprite.body.forEach((shape) => {\n shape.doSomething();\n});\nmySprite.body.forEach((shape, index) => { ... });\nmySprite.body.forEach((shape, index, array) => { ... });\nmySprite.body.forEach((shape, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

          The forEach() method executes a provided function once per body shape element.
          \nthe callback function is invoked with ...","params":[{"identifier":"callback","optional":false,"description":"

          fnction to execute on each element

          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

          value to use as this(i.e reference Object) when executing callback.

          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"sLm_WBiLWU5sQKimlW_Pa","name":"fromJSON","brief":"","examples":[{"caption":"","code":"// define the body based on the banana shape\nthis.body.fromJSON(me.loader.getJSON(\"shapesdef\").banana);\n// or ...\nthis.body.fromJSON(me.loader.getJSON(\"shapesdef\"), \"banana\");"}],"scope":"instance","see":["https://www.codeandweb.com/physicseditor"],"type":"MethodDoc","description":"

          add collision mesh based on a JSON object\n(this will also apply any physic properties defined in the given JSON file)

          ","params":[{"identifier":"json","optional":false,"description":"

          a JSON object as exported from a Physics Editor tool

          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"id","optional":true,"description":"

          an optional shape identifier within the given the json object

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

          how many shapes were added to the body

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sXJui-At-Mry6ZeC8tfeL","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns the AABB bounding box for this body

          ","params":[],"returns":[{"description":"

          bounding box Rectangle object

          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tOKGgzTiKWWmKxRGD2Mk4","name":"getShape","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the collision shape at the given index

          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

          the shape object at the specified index

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          shape a shape object if defined

          ","dataType":{"tokens":[{"value":"Polygon | Line | Ellipse","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3"}}],"extends":[],"implements":[]},{"id":"Ya1OFnzUGSVeVlItdmMvW","name":"removeShape","brief":"","scope":"instance","type":"MethodDoc","description":"

          remove the specified shape from the body shape list

          ","params":[{"identifier":"shape","optional":false,"description":"

          a shape object

          ","dataType":{"tokens":[{"value":"Polygon | Line | Ellipse","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          the shape array length

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yoZPnZlQJEeZFZW5ccbT_","name":"removeShapeAt","brief":"","scope":"instance","type":"MethodDoc","description":"

          remove the shape at the given index from the body shape list

          ","params":[{"identifier":"index","optional":false,"description":"

          the shape object at the specified index

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          the shape array length

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KY9MPnfnjtSaeIl9LBEMf","name":"respondToCollision","brief":"","scope":"instance","type":"MethodDoc","description":"

          the built-in function to solve the collision response

          ","params":[{"identifier":"response","optional":false,"description":"

          the collision response object (see {@link ResponseObject})

          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"WqeozvKXwstpuP0qM8Jv7","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

          Rotate this body (counter-clockwise) by the specified angle (in radians).\nUnless specified the body will be rotated around...","params":[{"identifier":"angle","optional":false,"description":"

          The angle to rotate (in radians)

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"default":"Body.getBounds().center","description":"

          an optional point to rotate around

          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Gg45KuCYMU4ETQabL86Tl","name":"setCollisionMask","brief":"","examples":[{"caption":"","code":"// filter collision detection with collision shapes, enemies and collectables\nbody.setCollisionMask(me.collision.types.WORLD_SHAPE | me.collision.types.ENEMY_OBJECT | me.collision.types.COLLECTABLE_OBJECT);\n...\n// disable collision detection with all other objects\nbody.setCollisionMask(me.collision.types.NO_OBJECT);"}],"scope":"instance","see":["collision.types"],"type":"MethodDoc","description":"

          By default all physic bodies are able to collide with all other bodies,
          \nbut it's also possible to specify 'collision ...","params":[{"identifier":"bitmask ","optional":true,"default":" collision.types.ALL_OBJECT","description":"

          the collision mask

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"re-OKKT6lKfDskEzF25TY","name":"setCollisionType","brief":"","examples":[{"caption":"","code":"// set the body collision type\nbody.collisionType = me.collision.types.PLAYER_OBJECT;"}],"scope":"instance","see":["collision.types"],"type":"MethodDoc","description":"

          define the collision type of the body for collision filtering

          ","params":[{"identifier":"type","optional":false,"description":"

          the collision type

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_OfDkFIZ0KmElnNlkRMLm","name":"setFriction","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the body default friction

          ","params":[{"identifier":"x","optional":false,"default":"0","description":"

          horizontal friction

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

          vertical friction

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dwAVWFLJmq2hhgERDugpz","name":"setMaxVelocity","brief":"","scope":"instance","type":"MethodDoc","description":"

          cap the body velocity (body.maxVel property) to the specified value

          ","params":[{"identifier":"x","optional":false,"description":"

          max velocity on x axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          max velocity on y axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"n7tKmahTWZiNNdCP-8ooi","name":"setStatic","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the body as a static body\nstatic body do not move automatically and do not check againt collision with others

          ","params":[{"identifier":"isStatic","optional":true,"default":"true","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"fggWGHOn40OQZF7K-ecQe","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the body vertices to the given one

          ","params":[{"identifier":"vertices","optional":false,"description":"

          an array of me.Vector2d points defining a convex hull

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"index","optional":true,"default":"0","description":"

          the shape object for which to set the vertices

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"true","description":"

          either to reset the body definition before adding the new vertices

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"v8n2fhL7ghEwXc6ewDIUp","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

          Updates the parent's position as well as computes the new body's velocity based\non the values of force/friction. Velocity...","params":[{"identifier":"dt","optional":false,"description":"

          time since the last update in milliseconds.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          true if resulting velocity is different than 0

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"_vCLmeQK676ElHCRSY3lv","name":"Bounds","brief":"","type":"ClassDoc","description":"

          a bound object contains methods for creating and manipulating axis-aligned bounding boxes (AABB).

          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"xXdjIIe9T9u8WV6QcZmZu","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TS3Vy8PpwyycqarkpiyYE","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

          return the center position of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C2Apz2xsD1a7Yy4VEwPfk","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

          center position of the bound on the x axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h_-cg-AWYce2aBsqZ8d9G","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

          center position of the bound on the y axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QHyQ-CWYviBlgeNvmk6Tx","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C3qrorVunbaksBA9HfC_2","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

          left coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mrCGjxtrfAu0h-FkTDBNx","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

          right coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m4vmTURH_3fhXY-5Xkzfz","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

          top coordinate of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UrdzCOE3i3LvXOyFPK0k9","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

          the object type (used internally)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NijwXw1YV2yTGO7xV5Tpa","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"INjUpw1qv0l9Db0pHu97A","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

          x position of the bound

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vnr1PrMdj0UMj2w2hfDxL","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

          y position of the bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xSmVLaZt4IDDT5KU-a0nO","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

          add the given vertices to the bounds definition.

          ","params":[{"identifier":"vertices","optional":false,"description":"

          an array of Vector2d or Point

          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

          either to reset the bounds before adding the new vertices

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"wwM5SfRQiLDPSKbyk6drY","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          add the given bounds to the bounds definition.

          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

          either to reset the bounds before adding the new vertices

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"NidKLYtzRcqvgiFm0jAJW","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

          add the given quad coordinates to this bound definition, multiplied by the given matrix

          ","params":[{"identifier":"x0","optional":false,"description":"

          left X coordinates of the quad

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

          top Y coordinates of the quad

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

          right X coordinates of the quad

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

          bottom y coordinates of the quad

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

          an optional transform to apply to the given frame coordinates

          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iEkXMQ7dhrQIcTrTgy9be","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

          add the given point to the bounds definition.

          ","params":[{"identifier":"point","optional":false,"description":"

          the vector or point to be added to the bounds

          ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

          an optional transform to apply to the given point (if the given point is a Vector2d)

          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BIz0m10zXRdrhkTdFCVPq","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

          center the bounds position around the given coordinates

          ","params":[{"identifier":"x","optional":false,"description":"

          the x coordinate around which to center this bounds

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the y coordinate around which to center this bounds

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gRISCJcDnMNqz7isKXhyz","name":"clear","brief":"

          reset the bound

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OUd2Pgyus7tk4ZeQqC4mM","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

          clone this bounds

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A5RN4exjk2P8iBsKqJuW6","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"vertices","optional":true,"description":"

          an array of Vector2d or Point

          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"nHkFW4L5_pBVBu7ZlfLUB","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

          Returns true if the bounds contains the given point.

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to check

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

          y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          True if the bounds contain the point, otherwise false

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OBVm552djvKgpTpAkAXXb","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

          determines whether all coordinates of this bounds are finite numbers.

          ","params":[],"returns":[{"description":"

          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"wyDW2lUPd2DdtmFCPYjr2","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns true if the two bounds intersect.

          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

          True if the bounds overlap, otherwise false

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HFEqzhBpTi5rcqsyaSn91","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

          sets the bounds to the given min and max value

          ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"M4JRjfbKAX7LcYV2J754Q","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          Shifts the bounds to the given x, y position.

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to shift to

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aZPDIKjHZc73DoqhIdMRy","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns a polygon whose edges are the same as this bounds.

          ","params":[],"returns":[{"description":"

          a new Polygon that represents this bounds.

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5DO0NrrwBIrUEUiKL8Ugl","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          Translates the bounds by the given point

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to translate by

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7KBNpDIjcqUAJT1oJSsTH","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

          Updates bounds using the given vertices

          ","params":[{"identifier":"vertices","optional":false,"description":"

          an array of Vector2d or Point

          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"URPgTHLeyizIcMw5qJuXe","name":"Camera2d","brief":"","type":"ClassDoc","description":"

          a 2D orthographic camera

          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"cOwAHZl87y4ElOaQpVqZY","name":"AXIS","brief":"","readonly":true,"type":"EnumDoc","description":"

          Axis definition

          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"fYs8s2IjSBrgBLuzUt8o4","name":"BOTH","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          both axis

          "},{"id":"FQX2g9ObkyENn0l_gR9gl","name":"HORIZONTAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          horizontal axis only

          "},{"id":"dvxL6fY2Sa_S4DzHVRpXi","name":"NONE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          no axis

          "},{"id":"f7mucIyVKtEwO9uWNneKr","name":"VERTICAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

          vertical axis only

          "}]},{"id":"pZB-xCcMM_G8F9rhTn9Pi","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

          Define the renderable opacity
          \nSet to zero if you do not wish an object to be drawn

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eOwhQe7OqS__VfcGwxarx","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether the renderable object will always update, even when outside of the viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G7-etFpEvB2j-5tRgTmIx","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

          a reference to the parent object that contains this renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x9Y_Q3JchcXjqiP7VAOUp","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

          The anchor point is used for attachment behavior, and/or when applying transformations.
          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3lTdlGBeh1u4LwiQRuWpl","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sGuK_zapMUDl9pKwpX0Q-","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5B_OCQ7qA6viC0jU4QF0g","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

          the renderable physic body

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YBu6bNLoEfzrpEJoQTvjb","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

          bottom coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7HuUW70dIkjbD7E2_a_LO","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Camera bounds

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-njz3tQC_yxkl1l7eZQ_o","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

          absolute center of this rectangle on the horizontal axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pGH4G09aXW3LLvwPimjuz","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

          absolute center of this rectangle on the vertical axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GYK8o3kLDZxP2PAoSXfO2","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the renderable default transformation matrix

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hH14-wYPl1el9EBnRt-Ro","name":"damping","brief":"","access":"public","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

          Camera damping for smooth transition [0 .. 1].\n1 being the maximum value and will snap the camera to the target position

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3sItJR-xQAYRvUH3vK3M1","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

          the depth of this renderable on the z axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jpsgAQtKAogihwBuW7CM8","name":"far","brief":"","access":"public","defaultValue":"1000","scope":"instance","type":"PropertyDoc","description":"

          the furthest point relative to the camera.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TWWtdRay9eWqOfLvKklfU","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A9cqk4RI0EQjZOLjxHbPD","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

          (G)ame (U)nique (Id)entifier"
          \na GUID will be allocated for any renderable object added
          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gCyiQ2hU3l5nmtkg841Vr","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          height of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tonSdmN4Fz5PQxljpIjB3","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether the renderable object is visible and within the viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BPRPZKzssWFFh1d_lFFCD","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          when true the renderable will be redrawn during the next update cycle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6VUbQFrZZHWUcHV4uSvZX","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

          returns true if this renderable is flipped on the horizontal axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kmOWMXi9oOKaJaFFG3D1a","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

          returns true if this renderable is flipped on the vertical axis

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jDdeSK9URoc7-LLBplj-2","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BBR8CF7UXgwabWSAV-d8s","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          If true then physic collision and input events will not impact this renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I-7RE3jXBH89WRmQMYUZt","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          make the renderable object persistent over level changes

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HUN2MRjBqfe4XbqPiGA-k","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

          left coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R2RfOd2P4r8GA5RPJIrSp","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_XZp-rp3Pc9KKC-CcVlFS","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

          The name of the renderable

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ky72m8xftWhVYFktGcYR0","name":"near","brief":"","access":"public","defaultValue":"-1000","scope":"instance","type":"PropertyDoc","description":"

          the closest point relative to the camera

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FFNGae-3WQOzLvzq_26cH","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

          an event handler that is called when the renderable leave or enter a camera viewport

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ECFxloUBuKL-ypugty0Uq","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

          Array of points defining the Polygon
          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HAq4RZZJ1dxNuVVfco-RD","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          Position of the Renderable relative to its parent container

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S26-mRXM7IfBRcCIWSiJq","name":"projectionMatrix","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          the default camera projection matrix\n(2d cameras use an orthographic projection by default).

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1UUUa6YdAqCrWabxpkyto","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

          right coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LzL4rRZ-1G19OyugTtj0o","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PZki41NGqQErSWux4lJ8F","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S4f7OD02Y6_Q53DpMK6na","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

          top coordinate of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9VNnKXTvWHM1nUHzAJbFm","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

          the shape type (used internally)

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8zVPipIwhQZL5RJDRnRI_","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

          Whether to update this object when the game is paused.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nnFeA_0hYVVl-L_jpe_8E","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          width of the Rectangle

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"asR4hxnITbwm7XABIDhgA","name":"smoothFollow","brief":"","access":"private","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          enable or disable damping

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"huDp7MmKPVw6aEE4KUTKF","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the angle to the specified target

          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          angle in radians

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5jIGH-BFhn9cG0v-Gywm5","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

          center the rectangle position around the given coordinates

          ","params":[{"identifier":"x","optional":false,"description":"

          the x coordinate around which to center this rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the y coordinate around which to center this rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VfauP8glC3JeqnYAklIE-","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

          clone this rectangle

          ","params":[],"returns":[{"description":"

          new rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fIe8A6FcwIM8wqKnlj3kx","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"minX","optional":false,"description":"

          start x offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"description":"

          start y offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"description":"

          end x offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"description":"

          end y offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YWcNqc9cGCV3yjpoUg6WC","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

          Returns true if the rectangle contains the given point or rectangle

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point, or a rectangle to test

          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

          y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          True if the rectangle contain the given point or rectangle, otherwise false

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_psG2__AqMM5_tyudg_Ee","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

          copy the position and size of the given rectangle into this one

          ","params":[{"identifier":"rect","optional":false,"description":"

          Source rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          new rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gnwyKo9IsWvwImNVonq-v","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the distance to the specified target

          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          distance

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g5oiP55jnW4GCg5lRHuFT","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

          Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

          a renderer instance

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

          the viewport to (re)draw

          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sffpXO5A5lIgatkHJ4_HN","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if this rectangle is identical to the specified one

          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          true if equals

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Z-WURYGtwyl32AdhFVNHR","name":"fadeIn","brief":"","examples":[{"caption":"","code":"// flash the camera to white for 75ms\nme.game.viewport.fadeIn(\"#FFFFFF\", 75);"}],"scope":"instance","type":"MethodDoc","description":"

          fadeIn effect

          \nfade to the specified color

          ","params":[{"identifier":"color","optional":false,"description":"

          a CSS color value

          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

          expressed in milliseconds

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

          callback once effect is over

          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"92zt71WVQjd_paDY4Omlt","name":"fadeOut","brief":"","examples":[{"caption":"","code":"// fade the camera to white upon dying, reload the level, and then fade out back\nme.game.viewport.fadeIn(\"#fff\", 150, function() {\n me.audio.play(\"die\", false);\n me.level.reload();\n me.game.viewport.fadeOut(\"#fff\", 150);\n});"}],"scope":"instance","type":"MethodDoc","description":"

          fadeOut(flash) effect

          \nscreen is filled with the specified color and slowly goes back to normal

          ","params":[{"identifier":"color","optional":false,"description":"

          a CSS color value

          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

          expressed in milliseconds

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

          callback once effect is over

          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"E0tvyBZrtPIRPQ3C2zuoq","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

          flip the renderable on the horizontal axis (around the center of the renderable)

          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

          true to flip this renderable.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KS5vlR8lkwI7M2rKNY1ia","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

          flip the renderable on the vertical axis (around the center of the renderable)

          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

          true to flip this renderable.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ay4eZ-A8OhVay3NGhGTHI","name":"focusOn","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the camera position around the specified object

          ","params":[{"identifier":"target","optional":false,"description":"

          the renderable to focus the camera on

          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[],"extends":[],"implements":[]},{"id":"T6c9PAlflE5VM7kRrKQ9j","name":"follow","brief":"","examples":[{"caption":"","code":"// set the camera to follow this renderable on both axis, and enable damping\nme.game.viewport.follow(this, me.game.viewport.AXIS.BOTH, 0.1);"}],"scope":"instance","type":"MethodDoc","description":"

          set the camera to follow the specified renderable.
          \n(this will put the camera center around the given target)

          ","params":[{"identifier":"target","optional":false,"description":"

          renderable or position vector to follow

          ","dataType":{"tokens":[{"value":"Renderable | Vector2d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"axis","optional":true,"default":"me.game.viewport.AXIS.BOTH","description":"

          Which axis to follow (see {@link Camera2d.AXIS})

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"damping","optional":true,"default":"1","description":"

          default damping value

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DQfHyu40-NkkVKwY1v2RE","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the renderable absolute position in the game world

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WeBbWEQP_wRQ4Z2kfVamg","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns the bounding box for this renderable

          ","params":[],"returns":[{"description":"

          bounding box Rectangle object

          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UCekchV7Kq3fexeaNTU1H","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns a list of indices for all triangles defined in this polygon

          ","params":[],"returns":[{"description":"

          an array of vertex indices for all triangles forming this polygon.

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"o6LRGId87Lj6xd7tLJXWr","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

          get the renderable alpha channel value

          ","params":[],"returns":[{"description":"

          current opacity value between 0 and 1

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4W90Lq8Tw4BzlivIXwu-y","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

          ","params":[],"returns":[{"description":"

          true if the vertices are convex, false if not, null if not computable

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DjWUjF_Fkwq5-ep77MeUy","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

          determines whether all coordinates of this rectangle are finite numbers.

          ","params":[],"returns":[{"description":"

          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"o8pIE6cff058Ogo8-StDU","name":"isVisible","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if the specified renderable is in the camera

          ","params":[{"identifier":"obj","optional":false,"description":"

          to be checked against

          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"floating ","optional":true,"default":" obj.floating","description":"

          if visibility check should be done against screen coordinates

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          true if within the viewport

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"cbWbWoOuaOKIPwBUUvnBN","name":"localToWorld","brief":"","scope":"instance","type":"MethodDoc","description":"

          convert the given "local" (screen) coordinates into world coordinates

          ","params":[{"identifier":"x","optional":false,"description":"

          the x coordinate of the local point to be converted

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the y coordinate of the local point to be converted

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

          an optional vector object where to set the converted value

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ssp_wjJMAchoZnNoPd994","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

          Rotate this renderable towards the given target.

          ","params":[{"identifier":"target","optional":false,"description":"

          the renderable or position to look at

          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dR4sOsfkEojLfUQwo-j5G","name":"move","brief":"","examples":[{"caption":"","code":"// Move the camera up by four pixels\nme.game.viewport.move(0, -4);"}],"scope":"instance","see":["Camera2d.focusOn"],"type":"MethodDoc","description":"

          move the camera upper-left position by the specified offset.

          ","params":[{"identifier":"x","optional":false,"description":"

          horizontal offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          vertical offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"SXK0_UVQnnCMHmiGpqhqW","name":"moveTo","brief":"","scope":"instance","see":["Camera2d.focusOn"],"type":"MethodDoc","description":"

          move the camera upper-left position to the specified coordinates

          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dmIl8xRbXhLAylJM9Ajok","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

          ","params":[{"identifier":"response","optional":false,"description":"

          the collision response object

          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

          the other renderable touching this one (a reference to response.a or response.b)

          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

          true if the object should respond to the collision (its position and velocity will be corrected)

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"utsGCEBUhj-byDbAxhXvw","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

          OnDestroy Notification function
          \nCalled by engine before deleting the object

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EFBFSTTaaynqU3WJztJBg","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if this rectangle is intersecting with the specified one

          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          true if overlaps

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ONiW-SDguuCFfLz-vOufb","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

          restore the rendering context after drawing (automatically called by melonJS).

          ","params":[{"identifier":"renderer","optional":false,"description":"

          a renderer object

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"h5mLB-eHtV5WczxgYNyof","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

          a renderer object

          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"ViaCHc08Uu4zMTZNZUJ6S","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9wvjagRVHJsUSILx-rDAV","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

          reset the camera position to specified coordinates

          ","params":[{"identifier":"x","optional":true,"default":"0","description":"

          initial position of the camera on the x axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

          initial position of the camera on the y axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"E0E5Ja8zbhdzimETjBI_s","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

          resize the camera

          ","params":[{"identifier":"w","optional":false,"description":"

          new width of the camera

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

          new height of the camera

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this camera

          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N_mtORGHPIJHlHyNyupQO","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

          Rotate this renderable by the specified angle (in radians).

          ","params":[{"identifier":"angle","optional":false,"description":"

          The angle to rotate (in radians)

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

          an optional point to rotate around

          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"axgtBtT7OD2Ci8V3B9DQI","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

          a number representing the abscissa of the scaling vector.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

          a number representing the ordinate of the scaling vector.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kRWCgx1ECn7viRpHxbfeI","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

          scale the renderable around his anchor point

          ","params":[{"identifier":"v","optional":false,"description":"

          scaling vector

          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"R42c7rXbBw0qDUg1hz3gz","name":"setBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the camera boundaries (set to the world limit by default).\nthe camera is bound to the given coordinates and cannot mov...","params":[{"identifier":"x","optional":false,"description":"

          world left limit

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          world top limit

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

          world width limit

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

          world height limit

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WmhccItTomS3OJozSOqEW","name":"setDeadzone","brief":"","scope":"instance","see":["Camera2d.follow"],"type":"MethodDoc","description":"

          change the deadzone settings.\nthe "deadzone" defines an area within the current camera in which\nthe followed ren...","params":[{"identifier":"w","optional":false,"description":"

          deadzone width

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

          deadzone height

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9evWAewLSRgR2xmvNkDhl","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the renderable alpha channel value

          ","params":[{"identifier":"alpha","optional":false,"description":"

          opacity value between 0.0 and 1.0

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"T40hE88m-upNH_-n7fOEY","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

          set new value to the rectangle shape

          ","params":[{"identifier":"x","optional":false,"description":"

          position of the Rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          position of the Rectangle

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

          width of the rectangle, or an array of vector defining the rectangle

          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

          height of the rectangle, if a numeral width parameter is specified

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          this rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oTvWN8cQEdzdyWPSpFO1I","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

          set the vertices defining this Polygon

          ","params":[{"identifier":"vertices","optional":false,"description":"

          array of vector or vertice defining the Polygon

          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

          this instance for objecf chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kAteiD1MoaKUPqIpD78Yz","name":"shake","brief":"","examples":[{"caption":"","code":"// shake it baby !\nme.game.viewport.shake(10, 500, me.game.viewport.AXIS.BOTH);"}],"scope":"instance","type":"MethodDoc","description":"

          shake the camera

          ","params":[{"identifier":"intensity","optional":false,"description":"

          maximum offset that the screen can be moved\nwhile shaking

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"duration","optional":false,"description":"

          expressed in milliseconds

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"axis","optional":true,"default":"me.game.viewport.AXIS.BOTH","description":"

          specify on which axis to apply the shake effect (see {@link Camera2d.AXIS})

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

          callback once shaking effect is over

          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"force","optional":true,"description":"

          if true this will override the current effect

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"9_A9gFqPh2VGD2OpUDJYu","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          Shifts the Polygon to the given position vector.

          ","params":[{"identifier":"x","description":"

          x coordinate or a vector point to shift to

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ydM-W8cHhNQ2qxheVL81Y","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

          apply a 2d projection to this shapen

          ","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_ut0SEXErYfQVNqK-na7F","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

          apply an isometric projection to this shape

          ","params":[],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KB9EWXKNdQ790KAA6_Emm","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns a polygon whose edges are the same as this box.

          ","params":[],"returns":[{"description":"

          a new Polygon that represents this rectangle.

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZqGG4_8YS_3WaM3dmFMqo","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

          multiply the renderable currentTransform with the given matrix

          ","params":[{"identifier":"m","optional":false,"description":"

          the transformation matrix

          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jeZpZqd4gd0tP19Zeh0DF","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

          translate the Polygon by the specified offset

          ","params":[{"identifier":"x","description":"

          x offset or a vector point to translate by

          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

          y offset

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          Reference to this object for method chaining

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EqZvqnluYZH0ZfR5vM0Hb","name":"unfollow","brief":"","scope":"instance","type":"MethodDoc","description":"

          unfollow the current target

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6gUR9yOMrJaBonBycdhbJ","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

          merge this rectangle with another one

          ","params":[{"identifier":"rect","optional":false,"description":"

          other rectangle to union with

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

          the union(ed) rectangle

          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bPHICUutP9liePkccN6vL","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

          update function (automatically called by melonJS).

          ","params":[{"identifier":"dt","optional":false,"description":"

          time since the last update in milliseconds.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          true if the renderable is dirty

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"p2EYMrjIJhNmjgexZL-2M","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

          update the bounding box for this shape.

          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

          update the bounds size and position in (world) absolute coordinates

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

          this shape bounding box Rectangle object

          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ue0NMp9cR6WHwpH6osIGB","name":"worldToLocal","brief":"","scope":"instance","type":"MethodDoc","description":"

          convert the given world coordinates into "local" (screen) coordinates

          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

          an optional vector object where to set the converted value

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

          a vector with the converted local coordinates

          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7Bp_jgQQVr3Is_EKD9mxJ","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

          called when the anchor point value is changed

          ","params":[{"identifier":"x","optional":false,"description":"

          the new X value to be set for the anchor

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          the new Y value to be set for the anchor

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"MjqXwy3BiCorzLar1MaL9","name":"CanvasRenderer","brief":"","type":"ClassDoc","description":"

          a canvas renderer object

          ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"i0lMjHoNAWBmRbftrYIkF","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

          the default method to sort object ("sorting", "z-buffer")

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZwkMApNxZdxXFK3oFTn1R","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          the requested video size ratio

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KYjdlGQRkmEx8IeP_Hbud","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

          return the height of the canvas which this renderer draws to

          ","params":[],"returns":[{"description":"

          height of the system Canvas

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hGLGDeXtc6QUo-nT-CDMs","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

          true if the current rendering context is valid

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X5vMLQwLfPoSlwpNfrf93","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

          The Path2D instance used by the renderer to draw primitives

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E2km3rpP7vNY-JCUNxw8n","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

          the scaling ratio to be applied to the main canvas

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-99JQojgmUZrCBwTlWft1","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

          The given constructor options

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C6_H0cnDNIq6Of-p16ODC","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

          The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a09amdFOQ81vpOCByO5eg","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

          return the width of the canvas which this renderer draws to

          ","params":[],"returns":[{"description":"

          width of the system Canvas

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pijxj6YBhDNK6Y4ozu_tk","name":"beginPath","brief":"","examples":[{"caption":"","code":"// First path\nrenderer.beginPath();\nrenderer.setColor(\"blue\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(200, 20);\nrenderer.stroke();\n// Second path\nrenderer.beginPath();\nrenderer.setColor(\"green\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(120, 120);\nrenderer.stroke();"}],"scope":"instance","type":"MethodDoc","description":"

          starts a new path by emptying the list of sub-paths. Call this method when you want to create a new path

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"paaEGcjDKkUX8zEFHkaq3","name":"clear","brief":"

          prepare the framebuffer for drawing a new frame

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iy4kDf3m68RqJ1X2NfT2I","name":"clearColor","brief":"","scope":"instance","type":"MethodDoc","description":"

          Clears the main framebuffer with the given color

          ","params":[{"identifier":"color","optional":true,"default":"\"#000000\"","description":"

          CSS color.

          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"opaque","optional":true,"default":"false","description":"

          Allow transparency [default] or clear the surface completely [true]

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"5UZbr9a_Ru2wAzcn9Oq0L","name":"clearMask","brief":"","scope":"instance","see":["CanvasRenderer#setMask"],"type":"MethodDoc","description":"

          disable (remove) the rendering mask set through setMask.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6i1TOFUx7Niu6v3kswim5","name":"clearRect","brief":"","scope":"instance","type":"MethodDoc","description":"

          Erase the pixels in the given rectangular area by setting them to transparent black (rgba(0,0,0,0)).

          ","params":[{"identifier":"x","optional":false,"description":"

          x axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          y axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

          The rectangle's width.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          The rectangle's height.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MhrpASMNxFRlym4Sxg9lD","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

          clear the rendering tint set through setTint.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pzveh5LorMw8H2otOqLyF","name":"clipRect","brief":"","scope":"instance","type":"MethodDoc","description":"

          clip the given region from the original canvas. Once a region is clipped,\nall future drawing will be limited to the clippe...","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"oz814eW3eEvWlwTGJvS2X","name":"closePath","brief":"

          add a straight line from the current point to the start of the current sub-path. If the shape has already been closed or has only one point, this function does nothing

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y1S31uBmVoxZMsDHEfZd_","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

          optional parameters for the renderer

          ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"nODfBr6s7SADesHbCuZIt","name":"createPattern","brief":"","examples":[{"caption":"","code":"let tileable = renderer.createPattern(image, \"repeat\");\nlet horizontal = renderer.createPattern(image, \"repeat-x\");\nlet vertical = renderer.createPattern(image, \"repeat-y\");\nlet basic = renderer.createPattern(image, \"no-repeat\");"}],"scope":"instance","see":["ImageLayer#repeat"],"type":"MethodDoc","description":"

          Create a pattern with the specified repetition

          ","params":[{"identifier":"image","optional":false,"description":"

          Source image to be used as the pattern's image

          ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"repeat","optional":false,"description":"

          Define how the pattern should be repeated

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasPattern","kind":"canonical"},{"value":"CanvasPattern","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GoA587DZokIBuUssB67O_","name":"drawImage","brief":"","examples":[{"caption":"","code":"// Position the image on the canvas:\nrenderer.drawImage(image, dx, dy);\n// Position the image on the canvas, and specify width and height of the image:\nrenderer.drawImage(image, dx, dy, dWidth, dHeight);\n// Clip the image and position the clipped part on the canvas:\nrenderer.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);"}],"scope":"instance","type":"MethodDoc","description":"

          Draw an image onto the main using the canvas api

          ","params":[{"identifier":"image","optional":false,"description":"

          An element to draw into the context.

          ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"sx","optional":false,"description":"

          The X coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sy","optional":false,"description":"

          The Y coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sw","optional":false,"description":"

          The width of the sub-rectangle of the source image to draw into the destination context. If not specified, the entire rect...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sh","optional":false,"description":"

          The height of the sub-rectangle of the source image to draw into the destination context.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dx","optional":false,"description":"

          The X coordinate in the destination canvas at which to place the top-left corner of the source image.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dy","optional":false,"description":"

          The Y coordinate in the destination canvas at which to place the top-left corner of the source image.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dw","optional":false,"description":"

          The width to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the image...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dh","optional":false,"description":"

          The height to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the imag...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"icHcv-eRe9r0he-a_3C7P","name":"drawPattern","brief":"","scope":"instance","see":["CanvasRenderer#createPattern"],"type":"MethodDoc","description":"

          Draw a pattern within the given rectangle.

          ","params":[{"identifier":"pattern","optional":false,"description":"

          Pattern object

          ","dataType":{"tokens":[{"value":"CanvasPattern","kind":"canonical"},{"value":"CanvasPattern","kind":"canonical"}],"template":"%1"}},{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"PnYP8lR9AYktHxkoU3ZhC","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

          fill the given shape or the current defined path

          ","params":[{"identifier":"shape","optional":true,"description":"

          a shape object to fill

          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"4OB9dz-S2iI83kb95c4lZ","name":"fillArc","brief":"","scope":"instance","type":"MethodDoc","description":"

          Fill an arc at the specified coordinates with given radius, start and end points

          ","params":[{"identifier":"x","optional":false,"description":"

          arc center point x-axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          arc center point y-axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

          start angle in radians

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

          end angle in radians

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

          draw arc anti-clockwise

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"liau2ZbUm1NBc8a8I7D4g","name":"fillEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

          Fill an ellipse at the specified coordinates with given radius

          ","params":[{"identifier":"x","optional":false,"description":"

          ellipse center point x-axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          ellipse center point y-axis

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

          horizontal radius of the ellipse

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

          vertical radius of the ellipse

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0mVMEEplaLqjHFX-Vf2nh","name":"fillLine","brief":"","scope":"instance","type":"MethodDoc","description":"

          Fill a line of the given two points

          ","params":[{"identifier":"startX","optional":false,"description":"

          the start x coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

          the start y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

          the end x coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

          the end y coordinate

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"nqW-CDgRfLs-nKUNUNSCd","name":"fillPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

          Draw a a point at the specified coordinates

          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sfVTapjijHYJ27J8vmPb-","name":"fillPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

          Fill the given me.Polygon on the screen

          ","params":[{"identifier":"poly","optional":false,"description":"

          the shape to draw

          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8ZG1i0ocp57c32ItcwNI8","name":"fillRect","brief":"","scope":"instance","type":"MethodDoc","description":"

          Draw a filled rectangle at the specified coordinates

          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"UwxDouVjZIvj__bo4023n","name":"fillRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

          Draw a rounded filled rectangle at the specified coordinates

          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dfq-RmBU2Mcq8d37Z6sdO","name":"flush","brief":"

          render the main framebuffer on screen

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vpHmLlmgEyCC1HYdADH_K","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

          returns the current blend mode for this renderer

          ","params":[],"returns":[{"description":"

          blend mode

          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"_9mRRaKk9fEiCKJXUgVwR","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

          return a reference to the canvas which this renderer draws to

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3HgVeZxhRDAFhTuh3YdHf","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

          get the current fill & stroke style color.

          ","params":[],"returns":[{"description":"

          current global color

          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7LSKVshE7OI5GgWFxZna4","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

          return a reference to this renderer canvas corresponding Context

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D | WebGLRenderingContext","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"nxwDeKMQo9POefh6mmUx2","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

          Returns the 2D Context object of the given Canvas
          \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

          use false to disable transparency

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"edJyeBcl51aDm_QF6dSRM","name":"getGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

          Return the global alpha

          ","params":[],"returns":[{"description":"

          global alpha value

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5hZFfNpmtqXxJXSX7csuf","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

          return a reference to the screen canvas

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v1hNIqMBxyiyAVCzkSAFY","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

          return a reference to the screen canvas corresponding 2d Context
          \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"swnfOJIkxB0da0VZ4th-P","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

          return the current global alpha

          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2sFi3CdPEGLcmKunjKsLw","name":"lineTo","brief":"

          adds a straight line to the current sub-path by connecting the sub-path's last point to the specified (x, y) coordinates.

          ","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false},{"identifier":"y","optional":false}],"returns":[],"extends":[],"implements":[]},{"id":"uFHOe0QSK19sMypLwvu92","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

          begins a new sub-path at the point specified by the given (x, y) coordinates.

          ","params":[{"identifier":"x","optional":false,"description":"

          The x axis of the point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          The y axis of the point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1g9Gw8skLbk4e-aQaHYWS","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

          check if the given rect or bounds overlaps with the renderer screen coordinates

          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

          true if overlaps

          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dl66Q44MhWMKF8hOoFVB9","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

          creates a rectangular path whose starting point is at (x, y) and whose size is specified by width and height.

          ","params":[{"identifier":"x","optional":false,"description":"

          The x axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          The y axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

          The rectangle's width.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          The rectangle's height.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Pis0lqhSGkDGCeqVgefqv","name":"reset","brief":"

          Reset context state

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2duGC9A87i2uP5gIsk5hf","name":"resetTransform","brief":"

          Reset the canvas transform to identity

          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eid69PZfmx_M3ei_RVm77","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

          resizes the system canvas

          ","params":[{"identifier":"width","optional":false,"description":"

          new width of the canvas

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          new height of the canvas

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fyvKgje7Wm3vy-taN_ViQ","name":"restore","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

          restores the most recently saved renderer state by popping the top entry in the drawing state stack

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FxsHYi5yYZ_ax6-stCnL6","name":"rotate","brief":"","examples":[{"caption":"","code":" // Rotated rectangle\n renderer.rotate((45 * Math.PI) / 180);\n renderer.setColor(\"red\");\n renderer.fillRect(10, 10, 100, 100);\n\n // Reset transformation matrix to the identity matrix\n renderer.setTransform(1, 0, 0, 1, 0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

          adds a rotation to the transformation matrix.

          ","params":[{"identifier":"angle","optional":false,"description":"

          the rotation angle, clockwise in radians

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"34XSpMhUE0mq9bfS-JbZs","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

          adds a rounded rectangle to the current path.

          ","params":[{"identifier":"x","optional":false,"description":"

          The x axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          The y axis of the coordinate for the rectangle starting point.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

          The rectangle's width.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

          The rectangle's height.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

          The corner radius.

          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gHjUkxQB4RrGpV1_zjonf","name":"save","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

          saves the entire state of the renderer by pushing the current state onto a stack.

          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DZHGwusJfPRy1ZK1zVF2N","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

          adds a scaling transformation to the renderer units horizontally and/or vertically

          ","params":[{"identifier":"x","optional":false,"description":"

          Scaling factor in the horizontal direction. A negative value flips pixels across the vertical axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

          Scaling factor in the vertical direction. A negative value flips pixels across the horizontal axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"A94wE4JV6xoh-IDEADq7r","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

          enable/disable image smoothing (scaling interpolation) for the given context

          ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"VPruCCB1zbvjX6OCnBpKl","name":"setBlendMode","brief":"","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation"],"type":"MethodDoc","description":"

          set a blend mode for the given context.
          \nSupported blend mode between Canvas and WebGL remderer :

          \n
            \n
          • &q...","params":[{"identifier":"mode","optional":true,"default":"\"normal\"","description":"

            blend mode : "normal", "multiply", "lighter, "additive", "screen"

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Qs039OgtE2Kk1X3ZpX2Dw","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Set the current fill & stroke style color.\nBy default, or upon reset, the value is set to #000000.

            ","params":[{"identifier":"color","optional":false,"description":"

            css color value

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[],"extends":[],"implements":[]},{"id":"3_--QZBpdU3KvPxhl3ZDj","name":"setGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

            Set the global alpha

            ","params":[{"identifier":"alpha","optional":false,"description":"

            0.0 to 1.0 values accepted.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"yqm0CxxmMDXLnaxqJof0G","name":"setLineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

            Set the line width on the context

            ","params":[{"identifier":"width","optional":false,"description":"

            Line width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AKrhzxkj7BHqwdtFnZP8k","name":"setMask","brief":"","scope":"instance","see":["CanvasRenderer#clearMask"],"type":"MethodDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nIf the drawing or rendering area is l...","params":[{"identifier":"mask","optional":true,"description":"

            the shape defining the mask to be applied

            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

            either the given shape should define what is visible (default) or the opposite

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"5XGrdmWZxeqpqZ3of3OQT","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

            set/change the current projection matrix (WebGL only)

            ","params":[{"identifier":"matrix","optional":false,"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aCKnXnnBkxulX0iOnYEpq","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

            set a coloring tint for sprite based renderables

            ","params":[{"identifier":"tint","optional":false,"description":"

            the tint color

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

            an alpha value to be applied to the tint

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"H0TIJiTB58gfNjK0_LvGs","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

            Reset (overrides) the renderer transformation matrix to the\nidentity one, and then apply the given transformation matrix.

            ","params":[{"identifier":"a","optional":false,"description":"

            a matrix2d to transform by, or a the a component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

            the b component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

            the c component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

            the d component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

            the e component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

            the f component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0y4dV1pG5KtsWpGJJdTBv","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

            stroke the given shape or the current defined path

            ","params":[{"identifier":"shape","optional":true,"description":"

            a shape object to stroke

            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

            fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"kVmqefbJCxld0XFMIjGtp","name":"strokeArc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke an arc at the specified coordinates with given radius, start and end points

            ","params":[{"identifier":"x","optional":false,"description":"

            arc center point x-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            arc center point y-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

            start angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

            end angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

            draw arc anti-clockwise

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"fill","optional":true,"default":"false","description":"

            also fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"nEKHLAQKDf3j7FYyb5c20","name":"strokeEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke an ellipse at the specified coordinates with given radius

            ","params":[{"identifier":"x","optional":false,"description":"

            ellipse center point x-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            ellipse center point y-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            horizontal radius of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            vertical radius of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

            also fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"mJWGd8z4joL3bSEMMS4iW","name":"strokeLine","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke a line of the given two points

            ","params":[{"identifier":"startX","optional":false,"description":"

            the start x coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

            the start y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

            the end x coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

            the end y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fbKoWV-hCM1gwZvbf-DfC","name":"strokePoint","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke a Point at the specified coordinates

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZRKK-wDtcOatQVjqIR8az","name":"strokePolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke the given me.Polygon on the screen

            ","params":[{"identifier":"poly","optional":false,"description":"

            the shape to draw

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

            also fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"_JusoXRrM1-wZf6WFwZRg","name":"strokeRect","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke a rectangle at the specified coordinates

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

            also fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"TubNLEjhsZcJoQgQuq2hK","name":"strokeRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

            Stroke a rounded rectangle at the specified coordinates

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

            also fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"oEHRm_BCtlFx3yDZjp879","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

            tint the given image or canvas using the given color

            ","params":[{"identifier":"src","optional":false,"description":"

            the source image to be tinted

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

            the color that will be used to tint the image

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

            the composition mode used to tint the image

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            a new canvas element representing the tinted image

            ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"z9DdWHdRHcBL8S8ATwC3q","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

            creates a Blob object representing the last rendered frame

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a Blob object representing the last rendered frame

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XoR8aG4K7ZobBqVrr_wMq","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

            returns a data URL containing a representation of the last frame rendered

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a string containing the requested data URL.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rCAb9Q20hXu2utCICwQTU","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

            creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning an ImageBitmap.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0Zzfz389eSlB65HwOsCc4","name":"transform","brief":"","scope":"instance","see":["{@link CanvasRenderer.setTransform} which will reset the current transform matrix prior to performing the new transformation"],"type":"MethodDoc","description":"

            Multiply given matrix into the renderer tranformation matrix

            ","params":[{"identifier":"a","optional":false,"description":"

            a matrix2d to transform by, or a the a component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

            the b component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

            the c component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

            the d component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

            the e component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

            the f component to multiply the current matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BSka8dr87cYCoHrromO_w","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds a translation transformation to the current matrix.

            ","params":[{"identifier":"x","optional":false,"description":"

            Distance to move in the horizontal direction. Positive values are to the right, and negative to the left.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            Distance to move in the vertical direction. Positive values are down, and negative are up.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"Yjv2DE_ME6IwcG_hqIeuH","name":"CanvasTexture","brief":"","type":"ClassDoc","description":"

            Creates a Canvas Texture of the given size\n(when using WebGL, use invalidate to force a reupload of the corre...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"gBD4c79hAwBlEPvHaiLCJ","name":"canvas","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the canvas created for this CanvasTexture

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bzu1uBoRh73MeGXlKN5Hi","name":"context","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the rendering context of this CanvasTexture

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"22LrlCTarWQ9pNMHDWx0v","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The height of this canvas texture in pixels

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j-OiRMwP8ghbPbHuJdkED","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The width of this canvas texture in pixels

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s67Oa-Tf1gNZlDIv0c80j","name":"clear","brief":"

            Clears the content of the canvas texture

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K4C4bthWlsDcRnzTzNrQM","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"width","optional":false,"description":"

            the desired width of the canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            the desired height of the canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"attributes","optional":false,"description":"

            The attributes to create both the canvas and context

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"attributes.context","optional":true,"default":"\"2d\"","description":"

            the context type to be created ("2d", "webgl", "webgl2")

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.offscreenCanvas","optional":true,"default":"false","description":"

            will create an offscreenCanvas if true instead of a standard canvas

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.willReadFrequently","optional":true,"default":"false","description":"

            Indicates whether or not a lot of read-back operations are planned

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.antiAlias","optional":true,"default":"false","description":"

            Whether to enable anti-aliasing, use false (default) for a pixelated effect.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"sZRyO-g-oYGQz6InSMaUQ","name":"getImageData","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns an ImageData object representing the underlying pixel data for a specified portion of this canvas texture.\n(Note: ...","params":[{"identifier":"x","optional":false,"description":"

            The x-axis coordinate of the top-left corner of the rectangle from which the ImageData will be extracted

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            The y-axis coordinate of the top-left corner of the rectangle from which the ImageData will be extracted

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            The width of the rectangle from which the ImageData will be extracted. Positive values are to the right, and negative to t...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            The height of the rectangle from which the ImageData will be extracted. Positive values are down, and negative are up

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            The ImageData extracted from this CanvasTexture.

            ","dataType":{"tokens":[{"value":"ImageData","kind":"canonical"},{"value":"ImageData","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GSfcw5LU-c7VbIa0yB0Sj","name":"invalidate","brief":"","scope":"instance","type":"MethodDoc","description":"

            invalidate the current CanvasTexture, and force a reupload of the corresponding texture\n(call this if you modify the canva...","params":[{"identifier":"renderer","optional":false,"description":"

            the renderer to which this canvas texture is attached

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"KaMq_XvHxxDi9VZ3EZmD7","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            Resizes the canvas texture to the given width and height.

            ","params":[{"identifier":"width","optional":false,"description":"

            the desired width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            the desired height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"PcgoA0f5IA3m3XMGSKNRF","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

            enable/disable image smoothing (scaling interpolation)

            ","params":[{"identifier":"enable","optional":true,"default":"false","description":"

            whether to enable or not image smoothing (scaling interpolation)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"CECp5V_i5_1APH5gPzwD3","name":"toBlob","brief":"","examples":[{"caption":"","code":"canvasTexture.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

            creates a Blob object representing the image contained in this canvas texture

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a Blob object representing the image contained in this canvas texture

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"essOAx4Gb0HRKji2vKnZG","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

            returns a data URL containing a representation of the most recently rendered image of this canvas texture\n(not supported b...","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a string containing the requested data URL.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9xtKcSmNmZFhZu2Zt25BZ","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"canvasTexture.transferToImageBitmap().then((bitmap) => console.log(bitmap));"}],"scope":"instance","type":"MethodDoc","description":"

            creates an ImageBitmap object from the most recently rendered image of this canvas texture

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning an ImageBitmap.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"HKZqODTTLecTp16Y-_LBo","name":"Collectable","brief":"","type":"ClassDoc","description":"

            a basic collectable helper class for immovable object (e.g. a coin)

            ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"t2AM4W3Vgon7IRR0Y3lrk","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Oitu5uzWtNOaOHXQvMLD9","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LBuliQdoQgryy_tpqyjW1","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2SngOAv1Q8N2G6ublqZS2","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uBMxMwLu7a9bIqXOxFaT2","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            pause and resume animation

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AOn_ECNFCCJh1i-H74FSv","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C_NPa7A-uI5fRqVbu1GUs","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c5TayJgGK00n3Ker2HLQp","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"86AdvUgruPXY5oeFQ_qtc","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P4S4mRI5Lfel6VR-LfbrX","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Degi5kMexjy29Qb5nZzZN","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z1yCLg42cqJxzXp635pVe","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"opSczKyNARCnI0j7NDR6V","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mbgPKxc4zJevvPhhuPVnF","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s3_YrI6Tmwa4CGw0rpvqo","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0jCnMOFrn-I5ICBX5njFE","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pjfkFFq-a7TrIB4ELhhnN","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GMu5C81kSLCz3lSvGf2U_","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-IJEEI5gS__MhuwYoaM5K","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MXUBS9yWTISZj2rpfMHHc","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bADDxwSIgUs6CveGjpt-i","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2zRV7jfqOPb_U4Cci6BYf","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KZ59T6vBBbsDw81bBmOxR","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LegRjpIVkWIAxqdkUxewI","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UGJkt6mb4UHM4-kCWF1_w","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FGmfDDOKKk-IDaayxb9Mh","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KW50OvsWkUG-I3i7leRlZ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0qRPiOdSdyHrkTNClL1BM","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

            global offset for the position to draw from on the source image.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UZ0vmLNEA7SRDhSa51gzj","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BuzUbQinRPFSRs-Ewp8WL","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OyeL0g7FDFKC3kZGnI7sG","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T0ICLsW1flR1MLLqjIY77","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RV0tQEPQmZ4KvVJH7lUrh","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eGBKzF52EkNzaKm1-piHR","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f174kFGPQMFsbcSJXs3Je","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v2ae_FdpOzbtVk7qYxajn","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MNiZzCzplI4sAhejjWSmA","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4aTBol33uE5CDikTuDkLv","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gq645gLlbc8YOCd4P5ruF","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfkF6VqgzQlyDj4fjzywL","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            add an animation
            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

            cycling speed for animation in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            frame amount of frame added to the animation (delay between each frame).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"odBnG6f4luEVnmW2cLE_9","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xlmnoXd7KeK6-kZppQZxQ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KrvdSe8FgSAMedSW6lGHW","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z20X1RROFAh2gKOcw3WmA","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the collectable

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the collectable

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            See {@link Sprite}

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"WieMeUD2Hyie4zJnEKuHe","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FnKD4FKLyA76bFguC2oBG","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rBbPj3vtfoIQP5Z5acH7k","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SjspNygLD0QXIm5jIi0KT","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Au9Sz2o4qtqc8EOJPcOcG","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

            make the object flicker

            ","params":[{"identifier":"duration","optional":false,"description":"

            expressed in milliseconds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

            Function to call when flickering ends

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UF_EmkZwIdFOmqtZy6hS-","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zg2RSh22Ah8oMRFX_gV9V","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d3bP1N-7mF_B1EzuHAS7g","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kHWn5TEAlYLFrg0iFclj2","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WuAW8SlXsnsIzVOk7fYq-","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current animation frame index.

            ","params":[],"returns":[{"description":"

            current animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lMMSPnXEVs0v0dgh5YDOz","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"0Zc9GTh_vIyj1bmra3INm","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Jv8dBVLRIoi34CeXha8cq","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"brVULC7qoaI9-MCw3EcV2","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

            return true if the specified animation is the current one.

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JBkRx8KosuTWzpt6BgT_F","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pUPkUMqDaZc37lUmKe2BY","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the flickering state of the object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZrUsRIbFxKMRKQzXBLImO","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xkP3SN4br83u9gLAl_15g","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9MCYYxXWqKDcOhe6NRm5A","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4OJ2lUT9cz35b1Hxw9No7","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-T3WHZPXrLDjP7K7wBFhv","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"liZNmEvvHwhVB1ruxcW_U","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"LAdR_HfgY4MYadqozedbN","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xYAhEqeMXfPScIUaRWIHo","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JUCdMrHmnmF-xeDABepDt","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            reverse the given or current animation if none is specified

            ","params":[{"identifier":"name","optional":true,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SnXeDjMDdX7IgByQ6EygZ","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WQPc84pasJ8dl8547XeoT","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uDV-TXu_Qs86n8t8zoDOF","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gZCae7ee-5EcZ8B2RCuoz","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

            force the current animation frame index.

            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

            animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aTzq1gqwPwZLIeIAQSO53","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

            set the current animation\nthis will always change the animation & set the frame to zero

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

            animation id to switch to when complete, or callback

            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

            if false will reset the elapsed time counter since last frame

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q8Tz5--cNvvxsK0ONLJDv","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"f6bJx0YfZLJQRzIg8WWbH","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

            change the current texture atlas region for this sprite

            ","params":[{"identifier":"region","optional":false,"description":"

            typically returned through me.Texture.getRegion()

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bDAKaGjlABSn7lvQaO_v5","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nc_JtepgCc9uTJpHsu8Qp","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WoMCokzuBlM32V-VD7pwU","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1MBcGts7eELmMmAh9PSLu","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dfQiEnGlPXuW7vhMxnaPG","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kpM2aaAHK30ukbHLWI41b","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VAmIFD1KFj231BSA1aYg0","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jy8cRcsXDuG6QBMW5QRxV","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"17xSYaXdjETkgF8NmbjpP","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p5vVUokCRfXRv2q2pMc44","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uyu8T8mcXbwbL_1aR3cd8","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this srite (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"TV6yxq2KUyepVlwsSlkpA","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            update function.
            \nautomatically called by the game manager {@link game}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Sprite is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ws6ScmpH5_jyNKE_6Dzrh","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"WulFf4XiL-TINZ85bInKV","name":"Color","brief":"","type":"ClassDoc","description":"

            A color manipulation object.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"TIS-sOI0Kuvt3j7yanAF2","name":"alpha","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Alpha Component [0.0 .. 1.0]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tdpyC9f8AvxLctjGVQwNo","name":"b","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Blue Component [0 .. 255]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e-6clFfV31so0d3t5vmsp","name":"g","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Green Component [0 .. 255]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4o0h826wGsfI-0bzwlfZO","name":"r","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Color Red Component [0 .. 255]

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OXTUuV1lscE7_3c2OFlks","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

            Blend this color with the given one using addition.

            ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NUxSoA098S-1-I3N92Vko","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            Create a new copy of this color object.

            ","params":[],"returns":[{"description":"

            Reference to the newly cloned object

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hA2tUpz86PrVTko8rk5ph","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"r","optional":true,"default":"0","description":"

            red component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":true,"default":"0","description":"

            green component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":true,"default":"0","description":"

            blue component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

            alpha value [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"XtWElTIqSW-lzytuLmy3V","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copy a color object or CSS color into this one.

            ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q9twPd_Y7ModXgsoVVAI6","name":"darken","brief":"","scope":"instance","type":"MethodDoc","description":"

            Darken this color value by 0..1

            ","params":[{"identifier":"scale","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oLnh-WO0AnirR7I4XWM9e","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            Return true if the r,g,b,a values of this color are equal with the\ngiven one.

            ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ShXh-DZOHCy41wz8vUSLc","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Linearly interpolate between this color and the given one.

            ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

            with alpha = 0 being this color, and alpha = 1 being the given one.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YhjVWvoVhrs5ud3FaMf8g","name":"lighten","brief":"","scope":"instance","type":"MethodDoc","description":"

            Lighten this color value by 0..1

            ","params":[{"identifier":"scale","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fq8mcfQeH7SM36HCHgXuJ","name":"parseCSS","brief":"","scope":"instance","type":"MethodDoc","description":"

            Parse a CSS color string and set this color to the corresponding\nr,g,b values

            ","params":[{"identifier":"cssColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oUZkR4Q6aYfdEsOWifcj1","name":"parseHex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Parse a Hex color ("#RGB", "#RGBA" or "#RRGGBB", "#RRGGBBAA" format) and set this ...","params":[{"identifier":"hexColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"argb ","optional":true,"default":" false","description":"

            true if format is #ARGB, or #AARRGGBB (as opposed to #RGBA or #RGGBBAA)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BaFW8pA9kSWL-k2JboC8f","name":"parseRGB","brief":"","scope":"instance","type":"MethodDoc","description":"

            Parse an RGB or RGBA CSS color string

            ","params":[{"identifier":"rgbColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jitvuqI4FKW0OYsVQW52b","name":"random","brief":"","scope":"instance","type":"MethodDoc","description":"

            Generate random r,g,b values for this color object

            ","params":[{"identifier":"min","optional":true,"default":"0","description":"

            minimum value for the random range

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":true,"default":"255","description":"

            maxmium value for the random range

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"raG6QkfIUWvhEE6uWHCzB","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Set this color to the specified value.

            ","params":[{"identifier":"r","optional":false,"description":"

            red component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":false,"description":"

            green component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"description":"

            blue component [0 .. 255]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

            alpha value [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LDmJap5UUQ8IruKCZTp22","name":"setFloat","brief":"","scope":"instance","type":"MethodDoc","description":"

            set this color to the specified normalized float values

            ","params":[{"identifier":"r","optional":false,"description":"

            red component [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":false,"description":"

            green component [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"description":"

            blue component [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

            alpha value [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Tr5YZyuXPeaKdcj14Tiea","name":"setHSL","brief":"","scope":"instance","type":"MethodDoc","description":"

            set this color to the specified HSL value

            ","params":[{"identifier":"h","optional":false,"description":"

            hue (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"s","optional":false,"description":"

            saturation (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"l","optional":false,"description":"

            lightness (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o06qcckGWdhR1EMj4VRS5","name":"setHSV","brief":"","scope":"instance","type":"MethodDoc","description":"

            set this color to the specified HSV value

            ","params":[{"identifier":"h","optional":false,"description":"

            hue (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"s","optional":false,"description":"

            saturation (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":false,"description":"

            value (a value from 0 to 1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Gyq4PbYSCRaWOrdyftijS","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

            return an Float Array representation of this object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fB2hMwaxkQu8tN-H6xjN_","name":"toHex","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the color in "#RRGGBB" format

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"RXYLw6LfKfLxOWioK5tsM","name":"toHex8","brief":"","scope":"instance","type":"MethodDoc","description":"

            Get the color in "#RRGGBBAA" format

            ","params":[{"identifier":"alpha","optional":false}],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"exFQYVQINXrpa2QS3AxsS","name":"toRGB","brief":"","scope":"instance","type":"MethodDoc","description":"

            Get the color in "rgb(R,G,B)" format

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"X1L7_Xr27ROjA_2-jjZB4","name":"toRGBA","brief":"","scope":"instance","type":"MethodDoc","description":"

            Get the color in "rgba(R,G,B,A)" format

            ","params":[{"identifier":"alpha","optional":true,"default":"1.0","description":"

            alpha value [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"EWP-8aT7akUI0q55eDqJf","name":"toUint32","brief":"","scope":"instance","type":"MethodDoc","description":"

            Pack this color RGB components into a Uint32 ARGB representation

            ","params":[{"identifier":"alpha","optional":true,"default":"1.0","description":"

            alpha value [0.0 .. 1.0]

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"Hv2U3OTt3MK-VbfClLqaT","name":"ColorLayer","brief":"","type":"ClassDoc","description":"

            a generic Color Layer Object. Fills the entire Canvas with the color not just the container the object belongs to.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"QwhJCU0z7SyWMuD50jnJZ","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o2-tv3Il7rg8GFqxEJIG5","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N-PNUdz0FdzL7Wspw_EnD","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Aq7fALZ5ev7tohylBN4qM","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vPSwusUOy4LUnVADkvsuV","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cxpHweqaPkz_s4qoaEBRA","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8eHW6lY4GOcpqz_bUFLxQ","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5a-kWX_nveqG4_Uk7UBOR","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7gr2lYODi283lx0o-z_Hj","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mv6cwEarFBlXQ8NUVrSJ6","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YE1jGi33IyXOSLSxdabpT","name":"color","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the layer color component

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ro8ianYTL2GRq23oRZWds","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h-RoyABysG_FKfmf7hE6n","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h3lvy5qh48RP4QsmQyoAN","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DI_tqExe_Wac5Sxz7tV4Q","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hzWP9MTTav9T25QR5A9qn","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pQGkenvkwOVFAjcXTG9Jw","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zU0BhX0ztkVmDkBZAY2jv","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nqatsH1eyo73iLjS3rOj1","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dQAQ8mmM04mfvZgVT0BS-","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XutimlB4qmoj5LTMjGD2-","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iriDZO2yArI_Irve6fpOY","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YWv1yeHWJyHCUqCs7tGIp","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DWZX_GxxUOi66mfBgkhMK","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"93qhQvGtmDUQLaNy32t4j","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_e6KLY3VJsWsj6DXjzeV9","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9zoXyAUmW2iKJdjKkX5sR","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sWI6WSbJMJtDTi4duI_A3","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T5gAO9_k-nsdOJBFXtAaG","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lXllUa6Bb8bs139Jynov1","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oDStgo5PauY6zG4gtY3Y6","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DRju8LjMsj91d_68zceo2","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tx0cSS0Gk_rglFge2AcwL","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kfDdY8MVWe86tAlVLTY9W","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lTuEvBC0NoVyYVPOrdfJb","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_kPjbZxzPMPEJGoi2vGQF","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sqd1ZYqHpau8-Gse27zBr","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CL_Sx10ZMgss1TAYQYw2t","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FBk4njBpEnr2EhqAX1BVP","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jNOIise0xN9DKrinwtwIg","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"name","optional":false,"description":"

            Layer name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"color","optional":false,"description":"

            CSS color

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"z ","optional":true,"default":" 0","description":"

            z-index position

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vghkTyedRl9DDYr5DKvv5","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ulvs9tu2OZujPNyZCOEbG","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5qo6AViHVzXB6ZW5_o7jc","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kgtm5sBCXiUBopTabw1sE","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"RTY4WIEd1qk9aUW5bQqtJ","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6m6DbWqz0f10Xwz_EQ7Ay","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5glERixdT_JFyh8fB8U7M","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6M3kfig8UyKLhMp-Kdk4I","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SNvsNFejNveCrAJfAJrcG","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"zWcctw92n4lSGmHUAF31S","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Tq7Oph3CNRC-KBqepvZBq","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"wWWUFHuCRQorEKNEVk6jT","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AEji0UEjpzaJBMLuzqLbf","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p9wvGHRwuKZYHJ_ej-WBN","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Sw4mf6DZRlDjn6qcHR1xZ","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mz3T_X2ATAsuVwzBKjYey","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QmxKE1pkwzlvCWKl6qgOo","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"NgxKIxo8IZcyHbYMGZKbm","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"XsPMA7r3j4ZgPNahkK9Tv","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OBmlGXGTIiN-2_gu4jobw","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NV0-rsLc-XNYXBt0Jlhds","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9IzH5ErcA1MpPRyl4AyBg","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZC4e5sMcO9n1l6OSZUjSX","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pMRAXONsejM_Nxgc9D51U","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gbYfJWrXTCWN-JQv50xPa","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uREOnCYjDe15Mc2SpbNG-","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"doNA4oCCjzWhmm0zFgIS-","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qcSa0i97hZHkSE43yTeB5","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0itszYBIW9wvDJwj6QhZi","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TkhpdOPhtqM-TGGf06RBn","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RMetU9d5Pu8xRkWoUer8W","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cHEDHI-VXXdKxAfZYzKZc","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"arwfpSunY42EbxIe-wlXb","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"r9TeNj29NyQxCAeZDYy3K","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"F4IHWhMzYL_0cl46YqpgB","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J2iLm9OAh1RjgiEsxcSif","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this color layer (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MHHqSwVbjoFsYtXKh3mnm","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"T9a1l882nx_EAEZ_eaWh9","name":"Compositor","brief":"","type":"ClassDoc","description":"

            A base Compositor object.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"9n0dEFC_sLAl9_JYasb3j","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yg7Gb24Z-d-jQ5wLQ64to","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the shader currently used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kXJN_vH6YOHdvusnIea8_","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mlpL04TkN7IxoDUGw7pCP","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

            primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sTNdcNCQaXYteh09ryO3E","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OyQkGNFOq7GG-L5MulEqd","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W8MKqwDUga77a5_j6BDnD","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bN1u94WweeBfKr8Qpe_au","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

            add vertex attribute property definition to the compositor

            ","params":[{"identifier":"name","optional":false,"description":"

            name of the attribute in the vertex shader

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

            number of components per vertex attribute. Must be 1, 2, 3, or 4.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

            data type of each component in the array

            ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

            whether integer data values should be normalized into a certain range when being cast to a float

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

            offset in bytes of the first component in the vertex attribute array

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"RT22dvkxAlkfjlQxtvXFt","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AHorFIfbtsva87eZ9pORI","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"renderer","optional":false,"description":"

            the current WebGL renderer session

            ","dataType":{"tokens":[{"value":"WebGLRenderer","kind":"canonical"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            additional settings to initialize this compositors

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.attribute","description":"

            an array of attributes definition

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.name","description":"

            name of the attribute in the vertex shader

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.attribute.size","description":"

            number of components per vertex attribute. Must be 1, 2, 3, or 4.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.type","description":"

            data type of each component in the array

            ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.normalized","description":"

            whether integer data values should be normalized into a certain range when being cast to a float

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"settings.attribute.offset","description":"

            offset in bytes of the first component in the vertex attribute array

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shader","description":"

            an array of attributes definition

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.shader.vertex","description":"

            a string containing the GLSL source code to set

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.shader.fragment","description":"

            a string containing the GLSL source code to set

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"ul-w-zCxn4QmP5b7zI3AZ","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

            Flush batched vertex data to the GPU

            ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

            the GL drawing mode

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9JSftMkp05JO_wHlEQCOZ","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

            set/change the current projection matrix

            ","params":[{"identifier":"matrix","optional":false,"description":"

            the new projection matrix

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"N7_UZaIPOdE9gbAsscUEh","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

            Select the shader to use for compositing

            ","params":[{"identifier":"shader","optional":false,"description":"

            a reference to a GLShader instance

            ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"3dbIOzHTHEopXjqZTSJ-4","name":"Container","brief":"","type":"ClassDoc","description":"

            Container represents a collection of child objects

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"ajrk4AXkndbx9EdlwYE_9","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"muq0OT11nZJ8E7K5RWU4k","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G-Md5AcpdNK2jaVC-Nlcw","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fQrwpDpeHZvT3qzRYvSdN","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AGRbjyPFJrwUihAh1ymA6","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            Specify if the children z index should automatically be managed by the parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1WM04zIkW9BDnkox92s5H","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            Specify if the children list should be automatically sorted when adding a new child

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jCOWB-4LuCuVSkhNgESMJ","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iOtDTzmZGBl87aQFeNdGn","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a background color for this container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nj7Qx4KV8jaBSYJWLgfbW","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VDk0-Bjez4Q82nRk1PY-a","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3ozVZkySg5KyTmkBs9_xT","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pti1Ulc3dpbLfNJ5GsD0j","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"11CiJ4xe2bOy9-53Rhwgq","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lx6BVhlQX5OSVzyJXM6tZ","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Specify if the container draw operation should clip his children to its own bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tU9Yyj-Nh-YOSVKFcexhR","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-SzXXa8gM6lwhux7mQKCe","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P21VvQB2PGXiOz-78r9fE","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6KqVyqt6M_0mHB-lHlwuR","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oytzEg7LMTqMS8GoYLwjO","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NZjeUdhIkXCuYv12LRmXq","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J1ISrfYNxrHJh0Izj2MXM","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qPY0cu3r3uX5vhK9JHEMG","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Oy5STYIXlu3ohmcvhbChN","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FBxuhYCS8utamiFGNYUSG","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0W0-gkM3EIToIlPg6-E0z","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TuTDFe3b8TlCrxPSCBFzq","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pQtDx_67R3Z-guqs3dou8","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C2rgn-luje414Ri9jf9mt","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BYk2iUNfVUtldKy-e1T4t","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TRffdZn6_IKnEAJteOZh8","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F78yp6I2mqPu7JrASfPPL","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"khyRDm6NFNl-4ctSvIBmh","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cW3tM64D_QSGtHqH4ATpG","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6-o37QzKuE6hj5EJEG3qV","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G_jsoQ24WOecDLciOEAXX","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            whether the container is the root of the scene

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BaCH4se0U41C6ACK4yj08","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zsf2zBO4OsX2lldKQ1dU2","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

            The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EBrW0Q-ORbShTaisWpOOG","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bAK6Mu9DJmts3PGhQlkVq","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vSjZExjIkhcv9uAtqsaxW","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IKrO9oM6L_ZQrqFf7F5yx","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rqIpRw73TaBQUS70adU0o","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QDmbw6fbwrLHy-e7k8yQ_","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add a child to the container
            \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

            forces the z index of the child to the specified value

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the added child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ar3wK38NuK-96YlLl8nc4","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add a child to the container at the specified index
            \n(the list won't be sorted after insertion)

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

            The index at which to insert the child

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the added child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0JhjM8Jhb8ZhfD23-AWHT","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4nkUA4OQSkq9ftrNueoVQ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sl-I03gNnjIMEKyxJQ7uc","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k5Fkd9jLlg2Xwzlu786jg","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

            position of the container (accessible via the inherited pos.x property)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

            position of the container (accessible via the inherited pos.y property)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":true,"default":"game.viewport.width","description":"

            width of the container

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":true,"default":"game.viewport.height","description":"

            height of the container

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NSupJfw5vOgeLuS7u7p5E","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jyNGFhrvJcxKnNx43y5An","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5n0q44v4Z0hVddVLp6edN","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3INzrgi269j_kic7b3YWh","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"EtnSeR-60etFfj0eIsnWT","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"73vccZiMqbU-GJZAEaPrt","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1yajZU-4FzuGQarXLMnYM","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

            The forEach() method executes a provided function once per child element.
            \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

            fnction to execute on each element

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

            value to use as this(i.e reference Object) when executing callback.

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"HeczAJA_XfvRlMT7p_tVS","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lk1gMaluJ7OhlKvV4j-Ow","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"r0GNU3Ac4_5ExXT9BPwqn","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the Child at the specified index

            ","params":[{"identifier":"index","optional":false,"description":"

            The index of the child

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the child at the specified index

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yxL1gZGCYaXi5vMSpzgEI","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the child corresponding to the specified GUID
            \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

            child GUID

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            corresponding child or null

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aZzzAExJc6X3i0gbvj7dW","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the list of childs with the specified name
            \nas defined in Tiled (Name field of the Object Properties)
            \nnote ...","params":[{"identifier":"name","optional":false,"description":"

            child name

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            Array of children

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"B3K0gKtFRfHJLK8aOntgX","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

            return the child corresponding to the given property and value.
            \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

            Property name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

            Value of the property

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            Array of childs

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"EWZVy5AcP9mL7_7JqFBjB","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the list of childs with the specified class type

            ","params":[{"identifier":"classType","optional":false,"description":"

            Class type

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Array of children

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Djod5Iht0JUwl3t1AYe0b","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the index of the given Child

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

            index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F0jtVGBP78K9ThEnc8zWV","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

            return all child in this container

            ","params":[],"returns":[{"description":"

            an array of renderable object

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"d7VSaojah26a5iAe1XHIs","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"7f99BSBtm1ACQ-MUd6lIw","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the next child within the container or undefined if none

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

            child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WAn1dWKxR2K4hIXmh4P7w","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IW1n-Yk_9ezhFEEaIxR6K","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the instance of the root container (i.e. the current application World container).

            ","params":[],"returns":[{"description":"

            root container

            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6U4uo6w1HCh4g81TufP4T","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if contains the specified Child

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"F4qSJHgY1hKFBUIpqXjfv","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

            Checks if this container is root or if it's attached to the root container.

            ","params":[],"returns":[{"description":"

            true if this container is root or if it's attached to the root container

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LzK3hVNLa5RZgzBGWDTq5","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3xS09hrgl6vYtBsolmJ5x","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3d-VdgXxJfNGyTLTpZflT","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ckif8Wn5vlpa2bABV4J6L","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the child in the group one step backward (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"YGb0gQv_0B_QvLs-tMxOh","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the specified child the bottom (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"a_hhWUq5ZMGQKv7hj_za7","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the specified child to the top(z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"xHA5RFkEMg_nthe2GT-Vv","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the child in the group one step forward (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"XNVtUSxYunur2l1ZPnvNR","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

            a callback to be extended, triggered after a child has been added or removed

            ","params":[{"identifier":"index","optional":false,"description":"

            added or removed child index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mti_a6VcuxGVbfyizFe3I","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NeeDAwdUbRGoTB_Kfn2oX","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0OArbMH3UZI7rGNF1qWe4","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iBDq7UrAL1ns5Krd1dbEf","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"g5jOa6lkz2WDFCYpy7TUQ","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"9kx2bZhFdNwujTRaxB_iL","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1m-Ng7iMbsxS6TJV10gIV","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

            Child to be removed

            ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

            true to prevent calling child.destroy()

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"IJ-UtKD_9WXL9PB3M1wlK","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

            Removes (and optionally destroys) a child from the container.
            \n(removal is immediate and unconditional)
            \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

            Child to be removed

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

            True to prevent calling child.destroy()

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"36yiHMwxxfS6GccKJ7U9D","name":"reset","brief":"

            reset the container, removing all childrens, and reseting transforms.

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d9757ZDeQVrmIYFpMusqL","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QUk8nLCml48uQa63eM-Og","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TgN7et7hDeFTKqqDPBZMz","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aSkz8uiHi7YP9YuSpSTIu","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rlelNYFnFOqdeKeNAt7A1","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

            Automatically set the specified property of all childs to the given value

            ","params":[{"identifier":"prop","optional":false,"description":"

            property name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

            property value

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

            recursively apply the value to child containers if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"bjMHYw34mQBxiqf8RKSoi","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dRARkfwMF93hLy0yMMiX3","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mnygBdNi8nEIjrt2Kvkxw","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RW5bTIrUQYUbEUVVuMAX2","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6gb2yWzaBF-W4vQxj8hUx","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

            Manually trigger the sort of all the childs in the container

            ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

            recursively sort all containers if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"bXR-inOMmn30U2dAURIR7","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

            Swaps the position (z-index) of 2 children

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"N91hAi_-bDS18AP99Xcl1","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XyUALbYQsIBLU55aB7wal","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y-qVl0HKzUuM6XjKNlo9j","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X6nO7ErHlHyqrz7cYXTnt","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SzP6Knu9tIYnmiKGTzTfZ","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fkBGhYYBfoKR0cXeHUMdf","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v-mVeJvUgK7b0wsAtEGYk","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this container.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this container bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tiILorU5kX3OzpN_EBIHj","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this renderable (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"nbRH9pGo3ctJBzejQnRrc","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            container update function.
            \nautomatically called by the application update loop {@link Application}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Container is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XCUU_Y3ZZzBh6OaunxWEd","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"pJPipaXtUgGDAny7_o7Dz","name":"Detector","brief":"

            the Detector class contains methods for detecting collisions between bodies using a broadphase algorithm.

            ","type":"ClassDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"nMl-pQhiHZZhVNIkrJkHD","name":"response","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the default response object used for collisions\n(will be automatically populated by the collides functions)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Waq_FcghhUh8oiRqsYDFX","name":"collides","brief":"","scope":"instance","type":"MethodDoc","description":"

            detect collision between two bodies.

            ","params":[{"identifier":"bodyA","optional":false,"description":"

            a reference to body A.

            ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}},{"identifier":"bodyB","optional":false,"description":"

            a reference to body B.

            ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if colliding

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0m7qU9bTVlyQ8CYl35jvD","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"world","optional":false,"description":"

            the physic world this detector is bind to

            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7ZOrwf9q3YGyQL59bShm8","name":"shouldCollide","brief":"","scope":"instance","type":"MethodDoc","description":"

            determine if two objects should collide (based on both respective objects body collision mask and type).
            \nyou can redef...","params":[{"identifier":"a","optional":false,"description":"

            a reference to the object A.

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"b","optional":false,"description":"

            a reference to the object B.

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if they should collide, false otherwise

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"e5982iuqEdgBTT8dj0Goy","name":"Draggable","brief":"","see":["DropTarget"],"type":"ClassDoc","description":"

            A Draggable base object

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"igaNSHcx7WByR3ceRf8E9","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EGIFWizRBQ-3-R9dHuofm","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KesYVjvfxr9Lox-C5xrdf","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WjZ9gnP4XCM3Xn8b3ZfH_","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DCyhMDkoJdbWL6RIy20Qs","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9r-ey9ZD1xOuM5ThIkjwf","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ThgyzEf2mJHUjpNsUzU-e","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2o4KXmpcAYBXBa3VhfghO","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"biCfA6WXdjYgTyyJ_nirK","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pUMfwXtncxk5YcYSxlkPk","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ru6I_ZrZutX-p2YDFRSVW","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x1zOt5BbOxtyxDhJWHw1h","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xuHPODNnn76qw01RfaQRM","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T3tsBtpqlzhAFeegxsqmU","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FX1gxeLbHVCAdkBSrlZDX","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PE65UIJhk8Ntkn6uE75qn","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SXM1vn58aMr7FhWcaPxKv","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LrRKHGU_I6F2XTlhGP2of","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KRaf8590wxAqYzPAlk4g1","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eQnpclcEb8-3i4d6MQQUp","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kt-neoNkQk4UUuoVR_J8D","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TkBuq16upVO8oIrmEVcIR","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tfZ2SfSDgbZnLAYOFY799","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a_pPsdE4IW5qTHaTFYwBN","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bHu4uz9V4BzwUZOJDJl1U","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"afZlnrtp3GAt6AjKndaUQ","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tW7HYGYZhsc2sd85FHzIo","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BvAUwVSSA02AvF2S4Wm80","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YZaN8H2qT5ymVfIm9r478","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oUWtr1_DBrri2woSRPX9G","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dDyIIN9cL_jftbS_8josp","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TQIFzH5efUqV8ixBpcZ5L","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sqMQSC2txnsmaJoQCpMCX","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z14qJcqxKl2vzxh2q22Ay","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mjDnuA0hsRuUhyd7MyyYj","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3GTG8QPsCwC0wQk5SpAWp","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"POy7MXU2pWpcg5JLNZuBh","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ax9S8Al5FbEF9WwUn_ien","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SJHZY0G9KYh6JJR5dEmor","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            draggable object width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            draggable object height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qSW-SFgJKC5ri_kGToM5V","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"a-j3PzVW-VK1Oi-w3UMbe","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q7TeNwza3TOG0CTbT0gO5","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HRjz4UJrhuHn0qxCB-egD","name":"dragEnd","brief":"","scope":"instance","type":"MethodDoc","description":"

            Gets called when the user stops dragging the entity

            ","params":[],"returns":[{"description":"

            false if the object stopped being dragged

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"SteFuDj0MnxPvlTfRUOBr","name":"dragMove","brief":"","scope":"instance","type":"MethodDoc","description":"

            Gets called when the user drags this entity around

            ","params":[{"identifier":"e","optional":false,"description":"

            the pointer event

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"Cqg13P-CJeWDoybBkl2S9","name":"dragStart","brief":"","scope":"instance","type":"MethodDoc","description":"

            Gets called when the user starts dragging the entity

            ","params":[{"identifier":"e","optional":false,"description":"

            the pointer event

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            false if the object is being dragged

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZtIZpx5cgEKGPBqfGe9EJ","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"z-Ws6xbq4hsdLih_Bl7FY","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"uXw1tmol2vpFTlhtT8TMi","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zWDAE2S-NlPGx3Hbzh6op","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7eo5kU0UYZgoBVRul1vD3","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mYbWOAk_KDAjlNm4Xo96b","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"23RbuIz856nW8TpopFGgA","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"uYC5LyKY7RrreN9SU5Twg","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IwD02NTLDj2dyXSmSBNQQ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"yy5MqMndEu7eWjRAztAXc","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Z8ejJFR341jB427xPYnFi","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"audW0nOkUDvtndvhD1E0R","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-lIMT4cXOIAeeFH30524D","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xRAAqogxWGE8Tq62x4XK5","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_3r8izv8_b2oFE6vY8Id_","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"8ErByPmY2EGEeSc4amNuA","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"WT-XCHg7sUjIOKNZ5AZ7D","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J5Vyie_Z_AgAWs4HFt32M","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4El0_O452lkvwRDVUgpbW","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LV6x2TcLm3G2fout4CC0d","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9uVvW74urp0NM_xXeFvOL","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"npkdcmBuvjaWk8SGiKa6W","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5H-JCNvqGG4kCQi8NV_vc","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wgpg_4S3gUirXF86dnwMh","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FwigffPg7MV4Sbyvg7CZF","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ip56PwJjBqW0oejYUjoKz","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"INJtt2av5WJBT-bRFFbp9","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GfxDNjIlmAY7EGkYLI3m4","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z3KLtKfia8r4vWqsaDOvQ","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ERDSb2OlQVwnPvkacXg7O","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P5IrKzERJt-OGep6TXkV6","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MYf5sTlHWwk08_PGA-pxy","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"YEf8f-dFLkErbF01SesSb","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZVV-GyNr9IBb4bKInaW0M","name":"initEvents","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            Initializes the events the modules needs to listen to\nIt translates the pointer events to me.events\nin order to make them ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zXRXw4OLrcwEvLZIYZpzg","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"ZJt6xu_YFIPSGvpPBgcUh","name":"DraggableEntity","brief":"","deprecated":"since 10.5.0","see":["Draggable"],"type":"ClassDoc","description":"

            Used to make a game entity draggable

            ","params":[],"returns":[],"extends":["Entity"],"implements":[],"members":[{"id":"RDiZ8orAdG9MwKizCctnC","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zABKsk8fUR2H30WDvrPFw","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ABtSPGpbSV8XN80HrCv88","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dLHGrTRNLXvZmDUBMrC44","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gpRovNBGgASel6QWxFqf6","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nDL_Ji5rQsLTcgooLNkDB","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VtuN58OSIISfQf-ZqhXa7","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"34Gig6VL9Xsyr8Arvzc03","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q1-H1zDeMv3Xg9DSJExSX","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sktAAbDIyMnhoP35YNI2l","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3ukf0pwUDB1yDNbJ4Nhiv","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zYRupGSiELAbK-ayyRVsw","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XnKKAzyID31P5we4qcauW","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Gh5EHNJUamuKqOKohrWv","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QSdRHRtOEZi75vs2vgjCM","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9AX-RU0-jpHaXSg7ZjVU_","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EnpNwcdUgL5x_i2Aj08ct","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hPST9RtKjjfpypsmkbmIK","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_LX4NvCP8XyiEDIWZYRqX","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yGpjm3Dapuw3_qLzuN5Ql","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u2cs_ue0ELMQnHhk__rLF","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mwTYqwnehqOXoclZws7kN","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vx32Fl5d-bUUXomMe0iFN","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kKAkfcfK3TkB_BLf3nzi-","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JEXaYxWcIWVGM4K-UtLtq","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ILvZyzVEnENNKEMzanbkt","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n5KTIcR8Jq_Ai4la9mbmA","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2F1zo_tTSjWiQwHmboK1V","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5F1KXXFsxH3ipA-iEgF4b","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UwNrz6m05Kzwug4b58KPj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JE1NLbW-7bD0U9459O_Ry","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B4NklqMSPNBlrNiaCe5Zm","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bHsWHkdaWhBgTQuJPKpuS","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MvZvWzz71lH6dX2cPRXYX","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DAZTKkKmyLZAjOGTjdR3I","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8koZ4Sjl9wDVnlg6Bm_EV","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B6z8dV_sbpWe4JoCIZm5Q","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Aomp-7ViqbMIpQpE7Ojx","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZKugorfvJ-5mDK3iNBDGo","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"op7HEhzQTOrtl1ZxgV5Hr","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sCfABmFjac3wUkfuMnGV1","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XLD4_XJmbZRWzQW0VGfTF","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            Entity properties (see {@link Entity})

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"bt-WyEKAttoUBjEb24MpO","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"eXdTpgXdLaDL0urqlu0WC","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9O7dKKpKPl5wCbEcGLibP","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hYyUkOqSJYIOa4eU0Xpni","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-pJlzQJ18gRV1_kDF4d0u","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UBVCU6JFapV4NiyCewvVS","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N3w8K3bhEY8G7eDMhHdS9","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9tRok1InOsy3afQWVqH0T","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zTzb4giz-gIzHen2VPqyU","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"jP5BOK0lFQEEUcHPQfzKx","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m1_6DHJes8rU8FgcRi3LN","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"57lxFbyNdVsYXh0lC2DnE","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qTbQX5SiCJU8fSuCTqLfO","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"78qvfkL74_U2TZZljTph1","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CPKE5W8uyMelnaxlTYr_q","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JisoNIP-CYsq49R1Tom3b","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9dVIyrDqoHedSTfKOFOwn","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wmtmdpAs48H7yWJA8-Bx2","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"G3PD0ly5iO1v5VYflPlC0","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"73ZcapKC418lqDDX430D4","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"OsaZo7mkfKPfE1Ote9ZXX","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KnzAsqykn5B5XbVHLWte3","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"C8j3rpfzwSPnZM-bP_NIP","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zM_V-YB_25RqOogte2TPk","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YrT5SGkIzOg6lQrzwjWPC","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"swK1jucl73IEN0tvg2Bw9","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KPGd5MxXtGToynUTwClOd","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2B5M5sAdilF_vHd6EzOMV","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qnhgeuWHnbPE3qpl_XP1t","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DHAySQ1_LxroR1XW-sykI","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PfHVXvJ2cPSp04O2g1Je2","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8Q8A6VqozDWnE1eckyhXj","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UyEAzN_Gws0lZnZmQL9NB","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CgOKhQWRUnjmQaKe1Gt4f","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"puCZ6zUuopdl9-jxyxjIJ","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s3lpoTWnkMaw9qqC6afiN","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QBBp-g3yRNnZQ02ZsD2pX","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this entity.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this entity bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fNzW5o-MRCw6uEEQZ5hpU","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this entity (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"PuGB9cc-uEU5vgYEGDJx8","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"SL200BH9MSD4bT7bVmf2q","name":"DropTarget","brief":"","see":["Draggable"],"type":"ClassDoc","description":"

            a base drop target object

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"Ult1NZKUKtxJRBuWzAfK-","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3YO2_dRuVt8yVM00CkTxk","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GzG8hv86ZH_5BKG9TWj0S","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o3zLJ3D3PoNQf2u5AoXre","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qWSpGnTxkLDTEzHavW0Y1","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RgY9f6TotpajpyAKPfFcJ","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OcjBE8vFViCa_jjO87i1R","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jVdKCsBut8huYFIDi2XSG","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mAb6LbA3cCcE6JmqjudiV","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5dqROqtAlH-zTlQQM5QnP","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LjktcOswZ-6R5XZlmwux2","name":"checkMethod","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

            the checkmethod we want to use

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ca_lsM_Lc87Iupx3t-aoO","name":"CHECKMETHOD_CONTAINS","brief":"","access":"public","defaultValue":"\"contains\"","scope":"instance","type":"PropertyDoc","description":"

            constant for the contains method

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cE674FfxgXs58MTdc_K6g","name":"CHECKMETHOD_OVERLAP","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

            constant for the overlaps method

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zf_UvNUlLjFby8PUa6Kca","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gNgXsrThA2vvu2uEpN3Kp","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hFr9ehy0kqyOupaYscGvP","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ex6A3SFdZ5qads8Ztn8He","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9oqrrhZK4_0BxfLQ94siz","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XY6v5k61L_yb2A2iz2M2A","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h7nAmhEFECYAxxF9nF_yp","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wbaM2KQUcuhCJ30_fl-_H","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FMPKRau-pAMwcX4YzTfZ_","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W7bUFvWLk1naNO36DBJU0","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wmqZE4nEyFyv2taQ3XKWH","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k9OMgPqY71FwCPnZcSWMB","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iA3cJFORHCKwEBQ-TCAMo","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vIV4yOBrEvUMkkn9V1yec","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JNCDURb1ZSlixbVL0MLBm","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XN6qCqyN9KHeNO9w4Km79","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gxf-p1QaOzggOqEmo-p7D","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w94FtrI6M-OgBAedD1VE5","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WttLVPXzumI3AC9Ws8vTN","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c8-VqLBQeUqeRa0ruQtso","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-gvrkgdCAcl8wYnS5wVnE","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FyxjragVplOxM4Pj_s8xY","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G0-2ZAZ9k7LlRwdvjVe-N","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LsHlTvGbGII00slURv15a","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ymnXe8ExSNPfQmBbgPfqh","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uU70P-vj7JUlbBt2sBpsa","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0svWKcZgxU-V-yIbZ6-P7","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QlM_fQW-kwBnaCh_2zt9L","name":"checkOnMe","brief":"","scope":"instance","type":"MethodDoc","description":"

            Checks if a dropped entity is dropped on the current entity

            ","params":[{"identifier":"e","optional":false,"description":"

            the triggering event

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"draggable","optional":false,"description":"

            the draggable object that is dropped

            ","dataType":{"tokens":[{"value":"Draggable","kind":"canonical"},{"value":"Draggable","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DTPVWYlfGyPYuWavCEsmT","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mCghEP4TVn15gfkRE5tS4","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the drop target

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the drop target

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            drop target width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            drop target height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Rlx4VhIlD6BgjH2IKI4Dt","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JSw-CY5gQVvg8rfPSP9sB","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-GfS-g9GQvDh943EoT32g","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1kPeFY3S4U3B6LmGHYzyl","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kE--R27w3g6jVeVQDCU6Q","name":"drop","brief":"","scope":"instance","type":"MethodDoc","description":"

            Gets called when a draggable entity is dropped on the current entity

            ","params":[{"identifier":"draggable","optional":false,"description":"

            the draggable object that is dropped

            ","dataType":{"tokens":[{"value":"Draggable","kind":"canonical"},{"value":"Draggable","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7ekNYUdRwYDb014zE_Awl","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dKekuRtPtv3dW4kvibF4M","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jdyI8Pb4rWSTye9BDB6-v","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RrphgZFqnBLQW_t32iz25","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZONM4tAtfda_2061jeMrS","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JkO3prCNnOL5pDEQycoGy","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"lMU3jl8SnTfiwfwiHo5mJ","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"la2_O3NDLSM-4xdPSeY69","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fyXH4sHZkSFq_jSzaeN4D","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JGN97HBNW63tG0pSMDpjJ","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oPB38JARyPR5U_xCSGzTM","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"BN9YIyyJcH0wdB3wHekp-","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cRwxaVNUWsPEVb3BhHXg_","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iVtOYmD-BwKN0n_gIuKtm","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"Erb87e9Jli_-SzPiGANLl","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"LYVe8tn6IwGV7G0pZpB6D","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cWGhG8OwFOe_AzEzJpCNQ","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5l00JyBrH0zDx6Le4J-pH","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mucil_N1SLg0x0CCCXNw1","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pjTrFmyFFGHFpulL9IWF7","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QAxJz4BfrDyiMRWKRao7p","name":"setCheckMethod","brief":"","scope":"instance","type":"MethodDoc","description":"

            Sets the collision method which is going to be used to check a valid drop

            ","params":[{"identifier":"checkMethod","optional":false,"description":"

            the checkmethod (defaults to CHECKMETHOD_OVERLAP)

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"js73VvTuT4WbTz8-lWuHp","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5gpSn8sIrq7cWFdjLm2pD","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tBlNtBufeyZ8QjQvcc530","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rumEbzuddBRu7WEX83W-m","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AZoHg5ZxJC8pIqRzLjmU4","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wiMe1J3KtJmFTtWwuph7e","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aJQIZFIoGrYPzB0OYf8mq","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JavzT0M1u7-RX-3C4cA_w","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3aAN4InUixVVRTVrNMJ_w","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x1KxhdggWcuJ_Kz0WtRgB","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IeGxZkOrurd_2alwFZ_b0","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8xCLjqJswLQ2Sfxq51E49","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zQ9Qp-FAl47pH6nw5J3LD","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"Y_cJWMBVz-lIT-Ju3IDZv","name":"DroptargetEntity","brief":"","deprecated":"since 10.5.0","see":["DropTarget"],"type":"ClassDoc","description":"

            Used to make a game entity a droptarget

            ","params":[],"returns":[],"extends":["Entity"],"implements":[],"members":[{"id":"Jpgw6FPOkIYp7UgwP5PwR","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MRx1TFGDO1FinTAyk2UX5","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n6t6EdQHXKeaKB9UofbD_","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3b2I3Hvcpgvw0XlPprdes","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C5OoisLD0dexRlRARHhmj","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z7rSHCXtXE8UMjzbgsCE5","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sLHr0q5wX36LJq0ZQbh2v","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qwpqcy_7Ik-bxvYW-Eika","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8K1PwpeYKkAcVV_yZPDYL","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fs9-PmdPfMVSm2tqQxreD","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h5Sa1_Cv3x3L2Cu0dtjdd","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rkq6js7HU3etl1RVGEXfW","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k6BID033de9ikG1iC4V8P","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ybGDh2Fe-SETfSctuIWs","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dW5s_vhZ6mNnKdqQ7csPq","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HAC0Z3EqdhZKmD49MQBhh","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_2ynX8xF7uht0dfCrijR3","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lSD6rrdVSYe9Eau0O1jDm","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jPUE4qYwopt591LQuVhu3","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dsbFuHNxWK1DfZQr0ONT-","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oTikPLXCRgYSWawOHx9Cj","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FggTY9qAFeAeQBax6xgT2","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TVdGcT3IYCxBbRNme8r_S","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z_V5WcCM07q73pyWKctFO","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1qGUVd2BfAMXosNW4xaTH","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TMABxus8axDSTe9Wuz0jI","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MOX0xmcv3avpIe7qKzEKZ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EUg1nNJCXyYiYcw4WBV_x","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_1y9kNOgMXO60yIGqhAmh","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ed8ACF_fKR04WoKFZcHDY","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oLLJTXG3ATHB5RQpkONYc","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NzolicblLN-vEgNc71nax","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ROIOKltrCZS17Zws6ZNZp","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eL-uatvMrHTtQSwJk9iX9","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xbIIuBZ17rNo1UmJF87a6","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mLI8Zx36-p-HD8ewhv3-L","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3xaUiVO9EBLqeSZwqNkyX","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LFZvoWzBXWz5MnFAARU6M","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cqm173n-VM62HRdfP0D0F","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"COsaYBNbBOzbwx4PJvoKm","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oo1h7VCiH5lq-G4mmaDQw","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rL6EB4K6-pa8HnxWqMbri","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the draggable object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            Entity properties (see {@link Entity})

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"6Cn6vIAAlSqBi8xVohelR","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tENP9L3BngxrEI1EkG91a","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BPI0_ffiVbaVwkBDDuGKO","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nmieReYNGrn4Bz70IKM51","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6OpNgEmGbvqdioOJFaoMc","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MfDhHx0Zm5LskyqAwhFWm","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ER9LPeNU0GvP1BtNrqcCY","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cda6ZAxXhRWimrofNLilK","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"avHzb2LMuGa0Yi-7uZPnk","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"S1mF8ITkAf0SApU5YYEk-","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h78iAyPGYr-Atgl1MICQ-","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"GeiDbKEJUd0morvS_jqtu","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"BTixshKRZCoDldOf-MkmJ","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K_8CC176K_MqsqqJCzAKt","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sxXScqnZTuYtSTBfLSD5m","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"KNHGNArRLwFa-Bto-XCaR","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4V6VKgyh6mFo5ptbnZvDF","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"js_5cdlMho1FQkV53VYal","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6ivyZoCl19S1TS4omFKNJ","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"FIYtdCKsUabyRK2X_9_WL","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"8XOz98FjgaZF4OrPizckK","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XpuAWQ_aSbhKvtSZRhnR_","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9CmhRHzTTcPGg46rTItR7","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PcYGVxdvAhGrddnfIBUDv","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NamI7gT1zyRdnrLNbyn0z","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z9zeym7X577Vrg4pNCMd6","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"m2uLZJ-i6PdcHrEABP_vl","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9t65tN8-Fn1yBheTMBKS1","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4v3Cmbz92ePo0LpE6ZGUC","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"RXffFY97eVvYijLHFHVe0","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ulfH41Fmg5H41oS5AISrh","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J784hKNFIsHkbkV8Oqd5Z","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"C5VKc_WtK3NvIrbUkyECm","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0MIy49TA80ru58FlmyC0V","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mqaMQofPda7b8Zlg_4UJ8","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FmP1gktMlXceyiDDdK6q7","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4wwG3RdlIv7nsagNnizyQ","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this entity.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this entity bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5Rd5yFSIKErhQVE29b2MX","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this entity (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"3ALA2-hv-bPKLW1TqC2s0","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"ONP2snVWr9EbbmHF5rr9E","name":"Ellipse","brief":"","type":"ClassDoc","description":"

            an ellipse Object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"pF970S7IGsnOtLVlXK7cM","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the center coordinates of the ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4t8lThmi6XkX2HBxZTduP","name":"radius","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Maximum radius of the ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ULmLKEHynT3MZ3XQYtHDo","name":"radiusSq","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Radius squared, for pythagorean theorom

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f3L1ouV1ejQpjEb6K1ySa","name":"radiusV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Pre-scaled radius vector for ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LmCQ8PLNcC_lXnc3HAtaH","name":"ratio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x/y scaling ratio for ellipse

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i6nn7Z3muXDAiJwMyoDp6","name":"type","brief":"","defaultValue":"\"Ellipse\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o7veAtOuJYvfbhn6x3Gib","name":"_bounds","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

            The bounding rectangle for this shape

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LxKB7zvjxHFCNNK2JHoEM","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this Ellipse

            ","params":[],"returns":[{"description":"

            new Ellipse

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P4V8ZUApXF_ZsRtETHGfI","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the center x coordinate of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the center y coordinate of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width (diameter) of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            height (diameter) of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5FCexmxygQBfx-cRoUBSp","name":"contains","brief":"","examples":[{"caption":"","code":"if (circle.contains(10, 10)) {\n // do something\n}\n// or\nif (circle.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            check if this circle/ellipse contains the specified point

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to check

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if contains

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hQMV94x04nu8v2YZYPrQ9","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ci2dCxDalngEgvP-SQxm3","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this Ellipse (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MzcuJ8RMnD__9LCl6tONR","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Ellipse by the specified scalar.

            ","params":[{"identifier":"x","optional":false,"description":"

            the scale factor along the x-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            the scale factor along the y-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F1IjhAnmdE4xGBikkhMys","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Ellipse by the specified vector.

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"46ClZD3-bz0LTyTR2MWRj","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the Ellipse shape

            ","params":[{"identifier":"x","optional":false,"description":"

            the center x coordinate of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the center y coordinate of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width (diameter) of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            height (diameter) of the ellipse

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pGD1WO84sRTpeaiZSSbFA","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the given transformation matrix to this ellipse

            ","params":[{"identifier":"matrix","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dDv-llKu6WbtXE30Ls-uu","name":"translate","brief":"","examples":[{"caption":"","code":"ellipse.translate(10, 10);\n// or\nellipse.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the circle/ellipse by the specified offset

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this ellipse

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"fdciJ3SziN-GrKYLWziyU","name":"Entity","brief":"","type":"ClassDoc","description":"

            a Generic Object Entity

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"nuMqi6pCaS1oUT0yRSMyJ","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            dead/living state of the entity
            \ndefault value : true

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wKIT-Pyc2-piLfttZThaD","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PIFrgNOr0J9SRuuD2Bxaj","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OREEFPbNL0f_8kjpewOWe","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"poIYXYQjtifRo961iySYI","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eg2yLmJmAigzkAS12YDWE","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"unw9befgplC5JRsDLtjBf","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fvAZkRAmRGgQFmvnVPbN3","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the entity body object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aBRTlMFzz8-PYrhy4_Lrn","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QYWqAQMDcAc9RAlUEz29U","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DGhelPK7n2Oq5jQ5XhqPX","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1waFs31yfCgKLi9GVWSAz","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KLStcPD9lNPvvdnwCUNoY","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VWO_qqWsBcpXlPiUquheM","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d9h7aT2EdUosHZgB_bSnO","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a36JDrWsFqtuCpfVyX1dF","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6F7aBfLO1btaqm1oD5our","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object unique ID (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cb2ooM1daV6_pX2HNCGBw","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RQYoBgvT2gBLfdu5sezT-","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sYAiYN4DhwgOb9nf3EJV-","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LWTM1X5RKK3FD2NPi0zde","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rBnITIBkmSo-8yksO6AFB","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mhqUYpVCTYH5iawcTGNqX","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"taWjuR2GphdbJJE0hEW1X","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D8ylnfzHVAkfuQxiV5Wut","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"67HzgBQxTKm3i6er2dval","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e2J9qGWS_aZeNU9BvkP1d","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-nSuVMzbUOecJ4KM3Q3fN","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ipLupAc7hBosF7vj92D-k","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qWA4BJ66PYeqInMP2Wc7W","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3MalYjmwb8SYxgAdIRYV8","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ykQab9KSUi30HRegLtGWA","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MXGnoPXKOa8oJD_uwwz-e","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"90jccQgrs-OonOptBZFGo","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NysEyFQgt71va5YT1tWFh","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W5jtYyuz2UzNTW-hacASZ","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

            object type (as defined in Tiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6kpOdNJjFrYJTCXHz2MS_","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K7raLW5C6HlftDRvcal50","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fNrqUZLjGd_URoH77aiDU","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sbCx_WPIyvyVZF_x8B60x","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"W7_K58D6k4_J4E8teTKqF","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jyhRD9-OmNYPMCVzlZdRX","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the entity object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the entity object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            Entity properties, to be defined through Tiled or when calling the entity constructor\nthe physical width the entity takes up in game

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","description":"

            the physical height the entity takes up in game

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.name","optional":true,"description":"

            object entity name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.id","optional":true,"description":"

            object unique IDs

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.image","optional":true,"description":"

            resource name of a spritesheet to use for the entity renderable component

            ","dataType":{"tokens":[{"value":"Image | string","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"%1 | string"}},{"identifier":"settings.anchorPoint","optional":true,"default":"0.0","description":"

            Entity anchor point

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.framewidth","optional":true,"default":"settings.width","description":"

            width of a single frame in the given spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"default":"settings.width","description":"

            height of a single frame in the given spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.type","optional":true,"description":"

            object type

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.collisionMask","optional":true,"description":"

            Mask collision detection for this object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shapes","optional":true,"description":"

            the initial list of collision shapes (usually populated through Tiled)

            ","dataType":{"tokens":[{"value":"Array | Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1<%2> | %3<%4> | %5<%6> | %7<%8>"}}],"returns":[],"extends":[],"implements":[]},{"id":"fIQpRrzid_vL8Jy5z2SdT","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"bdxTRvvHSgum6aJUFjYw7","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VI_uztWRtj3C0vIIYCtzX","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"01eFCZOqlDl6ZGkDsLwIO","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3tHefedWF5jRS174gxv5U","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jdHwSUhbA1_CzWvDIQkX7","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XM_FPF3WjTNmnlS2v9djs","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TJ83tKgq4EsmaG3Mi0bYN","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LUwu8Wsr5qeXPNCRqXfX8","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ZuDCAG7WmorDLwHqYFRKI","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3T6vaOZ-g4jmNW8Lg4ic1","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"l3x72iQ0UtywwAMcL-zTt","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JOOA8-qtGHyFg0zYETwpY","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YVedwXM0t_BJ7nC4IyKaw","name":"onBodyUpdate","brief":"

            update the bounds when the body is modified

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jwVxTS0tCGtnPmnaCKPuD","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Lhk0A62mCB0Zeme8VLU70","name":"onDeactivateEvent","brief":"

            onDeactivateEvent Notification function

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SiDTzHyZOAxmR4hYWNEcP","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AaEXVP4ZHJMjira72Jiup","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gX9e7JAOZbg8w2dpdXY3Y","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"IEBKDdSc_iug2Ccchqo4e","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"JCmvjgQMjBwWjsLpN2m_s","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"R2Nn-OzgtUkufADnMjm2j","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TYHmZkFmp04J1ca7a0xm_","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q89Ke6Le6SbbZuT_KPnag","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EcgFXrks07YSAvR7dhvYe","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Tu5Tj94_JMj_FiQqYjyG8","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vW50myq97hIXTMX0K4Skf","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bJbY2pZVTaNsD_NmVQ9nT","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uibqtIlBzNM2mSy9jG-Mb","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NL26mdQdVyjx1Jkeiue51","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"poKjMIW3w-D5G0jV2re6p","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wDUDrQmlkjJV0UOdil0tU","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vGxoNVDALgzijgcBpKV_E","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BS-ONEnL1J1svaJ_Ybe3T","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Uiy2iQ2SNHJmh9pfSQAX2","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lBzjKqnyPGOH2Ee9FpdjA","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tYRVks9D8kwUowMMqrdeS","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this entity.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this entity bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8pT3foF-jlboEPDWL1TC7","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this entity (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bVvfEw9yKP7U-kC_WkP6v","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"-56a2LZHFZL_x4TKULz_s","name":"GLShader","brief":"","type":"ClassDoc","description":"

            a base GL Shader object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"p48j8tJwRL7tTS0nzWs58","name":"attributes","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the location attributes of the shader

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zlpBsudyy2lc-d1-AajJ0","name":"fragment","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the fragment shader source code

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iLFt8ZmYo31cN88hmq-MB","name":"gl","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the active gl rendering context

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xQ4CoUnELQZqiStlmHZ1Y","name":"program","brief":"","scope":"instance","type":"PropertyDoc","description":"

            a reference to the shader program (once compiled)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wGhAvwGboofTkHKhnNFT7","name":"uniforms","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the uniforms of the shader

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JB-3FLQWGijHI7XezSRuo","name":"vertex","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the vertex shader source code

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qctpPDiVNOjFnt5iZgjZ4","name":"bind","brief":"

            Installs this shader program as part of current rendering state

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u104aLM7S29645qc4jWv2","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a basic shader\nlet myShader = new me.GLShader(\n // WebGL rendering context\n gl,\n // vertex shader\n [\n \"void main() {\",\n \" gl_Position = doMathToMakeClipspaceCoordinates;\",\n \"}\"\n ].join(\"\\n\"),\n // fragment shader\n [\n \"void main() {\",\n \" gl_FragColor = doMathToMakeAColor;\",\n \"}\"\n ].join(\"\\n\")\n )\n// use the shader\nmyShader.bind();"}],"scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Games/Techniques/3D_on_the_web/GLSL_Shaders"],"type":"MethodDoc","params":[{"identifier":"gl","optional":false,"description":"

            the current WebGL rendering context

            ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}},{"identifier":"vertex","optional":false,"description":"

            a string containing the GLSL source code to set

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"fragment","optional":false,"description":"

            a string containing the GLSL source code to set

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"precision","optional":true,"default":"auto detected","description":"

            float precision ('lowp', 'mediump' or 'highp').

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"BWvHN4775mlIa2SrtBvRB","name":"destroy","brief":"

            destroy this shader objects resources (program, attributes, uniforms)

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UZ8vG9xLUy46e4y5fUi2Y","name":"getAttribLocation","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the location of an attribute variable in this shader program

            ","params":[{"identifier":"name","optional":false,"description":"

            the name of the attribute variable whose location to get.

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            number indicating the location of the variable name if found. Returns -1 otherwise

            ","dataType":{"tokens":[{"value":"GLint","kind":"canonical"},{"value":"GLint","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"df44A4cHBK_fPYrpXzI-G","name":"setUniform","brief":"","examples":[{"caption":"","code":"myShader.setUniform(\"uProjectionMatrix\", this.projectionMatrix);"}],"scope":"instance","type":"MethodDoc","description":"

            Set the uniform to the given value

            ","params":[{"identifier":"name","optional":false,"description":"

            the uniform name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

            the value to assign to that uniform

            ","dataType":{"tokens":[{"value":"object | Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"object | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"D0bK6ZSts6-YZ3EiyldMm","name":"setVertexAttributes","brief":"","scope":"instance","type":"MethodDoc","description":"

            activate the given vertex attribute for this shader

            ","params":[{"identifier":"gl","optional":false,"description":"

            the current WebGL rendering context

            ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}},{"identifier":"attributes","optional":false,"description":"

            an array of vertex attributes

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}},{"identifier":"vertexByteSize","optional":false,"description":"

            the size of a single vertex in bytes

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"F8HOLP0uwgqoAB8GAdAsC","name":"GUI_Object","brief":"","deprecated":"since 14.0.0","see":["UISpriteElement"],"type":"ClassDoc","description":"

            A very basic object to manage GUI elements

            ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"TikWq5E1P_-gl93j1-EQP","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"md8SNTwQ7q4jhjTisfUud","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9yUgaC34t8PepODD2SiJ6","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DIph-xPl1FQzPVnB_BKdp","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7peCDF-bEEvt8rCB7Em5d","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            pause and resume animation

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F193PoQLYVjnN_ErBoB5U","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QCDsBXoJf-Q6d_S5OKWgL","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4lYvK-PO_4WrjbyWjnyGZ","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u1xs3NGkIWbNw48GFg10q","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SXa41JLEOiHpsPY_vQFQ7","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"japhLqCkXoB5tWmkldj2A","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XfFGWCNwcfJKgyNAbO8HT","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6RE7M5e3-JZ5lLAUtvctq","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dWcCWksmvxfOwjpOStuha","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VdSR0ZnYiPJrXF_LPKyWQ","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mF6fAg5SpoVLqfgmCvSLh","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zDA-vWjKPmgh1Ar67DPEz","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vElWcWM0S4i0rhTz-sRg6","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"czhw-Wwn_84Cf1geOA44G","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"grIaovEGHxVu7HjbmM2qG","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bNYe-YpKot-BxZb_oyclT","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rPDGMh5YsB2mH6W7AA62E","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JhxtdDQ6v5KHpu9saDsbP","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"27Vw25wkqgaD0C7StsFSR","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"debLMdLVEK9o4PhXSMdWW","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nT52s8nnTZA9e9P3VWZmY","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eu5iaGu0nuVeHs4RH14VA","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L22lHX_1RdMmqfxE75B9e","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

            global offset for the position to draw from on the source image.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v9FwslHAD3c1pXmiD-6fE","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o27X7TuMeYbDtn1zoPB39","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d4GhZ6r0Dd1Bat9NPK5KA","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ykSKpusOrge33w9E61PQm","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kcyyPVX6FEC0kEg7oh3ht","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bM0A9CijNda6dfX5J5PQW","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MocBR7OWz5dxO4uaMIaae","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YWQqPWo1SWl0vUS2vTSD1","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UVS4MjWgdAF_iIiq2wkbe","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"40GmY9boaCMDmrB49esoy","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"okWKcI6bj-u65PYTc0DsZ","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Y98Uwulgej19Dcd9Ye8W","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            add an animation
            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

            cycling speed for animation in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            frame amount of frame added to the animation (delay between each frame).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6KTFzezZ2zdcaUBI6RVwJ","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sCS_AqnScNnPm4X71W0EW","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F-iwffQ2rz2M2XY1nwVAZ","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kcta7kTDsZXaIWCsa68Y6","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate of the GUI Object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate of the GUI Object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            See {@link Sprite}

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"N6hdI2044De75OD2jZV06","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dYYvjt4DUjOcRN1tCZqzB","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cj9Bcd_d-EtalUK1cfm_t","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ut12N8fTv7RrySBcaZshY","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"SWxJKL3a0tiMan3g7cX42","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

            make the object flicker

            ","params":[{"identifier":"duration","optional":false,"description":"

            expressed in milliseconds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

            Function to call when flickering ends

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oEauUNBt1DN-la4w0KI0v","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"spNxKE_aMVc2ZiMBzS8Dq","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x50ZIcpqcmaYzkd2o7XjY","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pcxirn5x7CW-BE-kl_aSZ","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"utzPYd1Lnqj2oH2dh9kj2","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current animation frame index.

            ","params":[],"returns":[{"description":"

            current animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5Aw4xeBFs7wsosbqp-hQU","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"4GfLBKP6p7EQjZnBXbaSW","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gM1aGfDTayuTW0ShOjbxE","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aFP0BPsmqFQ_Oyg0hxfrh","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

            return true if the specified animation is the current one.

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"viSXhiNhdsKtAgdqhGQ-z","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6lIXF_cqtpI_YvVm11lVx","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the flickering state of the object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ULFlgfOX5F7JrfTNZRXhr","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0D-GBLY_4yX0aRAhvXnI7","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0ENB_D5wpXX4zTZ0YX9I5","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tUcrvXrAyFJR4PAevoUim","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8TtbwrlIQyBJ8iYbaeor3","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"OY0Yvs9FRMrPxWdJzbhLZ","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"DO2N1WmUrRkpk3mxXkWl4","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M7QkGa2GCJlhABeY9Kg54","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qq1rxWhTEneYOiRUyLFMp","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            reverse the given or current animation if none is specified

            ","params":[{"identifier":"name","optional":true,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4Qe2UKscmbSArmF9NV1Lt","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2WmbFpiGwHAqvlwry2I-i","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qqWhkXX40zl8tgLP6STFq","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_S_9QbvEWIvy2bddnbvHf","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

            force the current animation frame index.

            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

            animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FQQ4051Lmjd21mB8aBlk4","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

            set the current animation\nthis will always change the animation & set the frame to zero

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

            animation id to switch to when complete, or callback

            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

            if false will reset the elapsed time counter since last frame

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gY-mcRrti9NBjj3620IhP","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"TmwYAa_jpjkTERdNJGEu0","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

            change the current texture atlas region for this sprite

            ","params":[{"identifier":"region","optional":false,"description":"

            typically returned through me.Texture.getRegion()

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BQeFHlGADCcbxSS61N8sB","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K2T7JXFt7VNKdIwnpDK1d","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dNqQrPbqhIFfZx28Xn6jy","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iY2OjGldQYc253tDhaUqc","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DAknMGF-dfv1mxsCtlNd4","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jvtZur2MfTCoS4LCfCkQ4","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4J_HjNDEnNQgGR9ATyzis","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E8DExD_2YJXryzINhpQsl","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oNP00rgUsq1oM4I5GAJ8l","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VTcH2FimCMTGx4q-RXUdq","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YYHlHpy7zrldoMeTPBhZK","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this srite (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"L_wkazB754s5aswu0uybO","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            update function.
            \nautomatically called by the game manager {@link game}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Sprite is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1gIP_f3wKC1BIxQ5a4SFR","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"kCE_kfq3zU0PPGp7Qugw8","name":"ImageLayer","brief":"","type":"ClassDoc","description":"

            a generic Image Layer Object

            ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"Zvuq8MLyr5Up1M57O2OBK","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O_uiC2oNmgCCsvprpkf4D","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G38tIK_ur1vCrV1Zu80Ri","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gf2v01XQyH62bpOVe6i92","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2SlJAtSGoGys_cVPRxjRO","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            pause and resume animation

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-JWW75pk4XL5nMl7DYW6q","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SX9spPUP5yZUo0h49gKPh","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LgHuSH82bssZef4zgJrw3","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vu1IUQGt7qQS5EGJbzOuD","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rp1Ih3PlYZiDa3ocwKLIc","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TPIze7uBIHMKp4KA4jfUD","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3Yw2Tzf8eXF64SYL4Rr_0","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b3VnlL9br-nddDIpr_1q-","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e4GZn6CPRXAfzsbJMG8JL","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MGnmALRg8Cx_2l3-pJarB","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jTeb5-3wNfVfFWxzfzRbY","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5pG61zPrKSukDViiFMemT","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ql84nIWZ1AP_x_xkKv9kj","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nxdnPWx7by-gENNsF7sPC","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y1CHI2EhfionSsQeQc9mL","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PVId6YcPWK9qOIu4l9ES_","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LjqvlGGx3NbHQDW6a-8B9","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jWUhgXlbmRlP6ar_mHlFz","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m-blcpWqz8AbrRiU0iTS5","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0LP54R7Qak1QqoMz9E1r1","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vwiE-AKhm40-YXeeEOAS8","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J3MkpP5pmaUQVP9BCUnF8","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FVitBbjCTONg2WE5B9Afb","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

            global offset for the position to draw from on the source image.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ne3RBqCM2KMcY7FkZ9oB6","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XlDEmIafBCwFai0zIdKWR","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t7PXL3IEUfE5AzOTfvZNw","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U_DH2ssXUtZoIIIz5zihI","name":"ratio","brief":"","defaultValue":"<1.0,1.0>","scope":"instance","type":"PropertyDoc","description":"

            Define the image scrolling ratio
            \nScrolling speed is defined by multiplying the viewport delta position by the specifie...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lkoKRJgswN3nQoApduhQu","name":"repeat","brief":"","defaultValue":"'repeat'","scope":"instance","type":"PropertyDoc","description":"

            Define if and how an Image Layer should be repeated.
            \nBy default, an Image Layer is repeated both vertically and horizo...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m5snzKfbEqw7HVSpCkEjo","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xH-6SCNZcx9M1frhNFSKR","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BRMyJSVuKq3SZghx9biV6","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jk89OiyMm_bxdMUuEtgcU","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z4jk-CGcGeUSzID4LsjB9","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JV3L_9FKSwthFuqsAl5-D","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gj4oxPJPvir88Sk2QWAQO","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gPRYT_N2mRYD8GAKkN3DA","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3Gc-9OFpz4rHbXXv_VHW6","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            add an animation
            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

            cycling speed for animation in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            frame amount of frame added to the animation (delay between each frame).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9Q3V9QqYxG4pqCqOjXDlX","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4iMFLnphBqB9SQjJL81hi","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SQJzDRvOFvVZzHkx_lnlw","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tmXTiDk5NwmHQqDu8CN-u","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a repetitive background pattern on the X axis using the citycloud image asset\nme.game.world.addChild(new me.ImageLayer(0, 0, {\n image:\"citycloud\",\n repeat :\"repeat-x\"\n}), 1);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            x coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            ImageLayer properties

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.image","description":"

            Image reference. See {@link loader.getImage}

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1 | %2 | string"}},{"identifier":"settings.name","optional":true,"default":"\"me.ImageLayer\"","description":"

            layer name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.z","optional":true,"default":"0","description":"

            z-index position

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.ratio","optional":true,"default":"1.0","description":"

            Scrolling ratio to be applied. See {@link ImageLayer#ratio}

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"settings.repeat","optional":true,"default":"\"repeat\"","description":"

            define if and how an Image Layer should be repeated. See {@link ImageLayer#repeat}

            ","dataType":{"tokens":[{"value":"\"repeat\" | \"repeat-x\" | \"repeat-y\" | \"no-repeat\"","kind":"canonical"},{"value":"\"repeat\"","kind":"canonical"},{"value":"\"repeat-x\"","kind":"canonical"},{"value":"\"repeat-y\"","kind":"canonical"},{"value":"\"no-repeat\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"settings.anchorPoint","optional":true,"default":"<0.0,0.0>","description":"

            Define how the image is anchored to the viewport bound. By default, its upper-left corner is anchored to the viewport boun...","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"e2KsT4h4Nvm9NoUk06A5Z","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1wVDWJpxweibT11ajI5ss","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zBMR5WIr6o3yvunAOVsxK","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S2zrbBLKcBzHam9Ie2sZY","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"UamrUG6hLFG-pIxsHu7jn","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

            make the object flicker

            ","params":[{"identifier":"duration","optional":false,"description":"

            expressed in milliseconds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

            Function to call when flickering ends

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UZaxyQ4TUpM1ErhY_-8w4","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TUpBPATb7FrotvjLScjMh","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tW0ZjGi_boydO_RruGUCB","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cVAi4_62cTqFzZf5KO6kl","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J0XE26ssvzBiLGHkYlvsV","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current animation frame index.

            ","params":[],"returns":[{"description":"

            current animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QsTb8StubBt4LjfNnpvTZ","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"4EnuGUp9gbqhlGUd4lwhW","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VVOArjGVaTOxky4oMf4A5","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"uftYlbbCSv2sjVcFKCwuQ","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

            return true if the specified animation is the current one.

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"j0vxbg2dqxNfIRICZD12v","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"eWODWude3GOFM5mg_4uKW","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the flickering state of the object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-Qf_-brKIZnuAIq-Y0VGM","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"O7Rd0c7uTuVunF6TIDfhH","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HctcttsA87fN_c8yG1OIQ","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RMe5Fqk-V4sQZ8emDLORo","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"P1P2XAY-AUF6pPOoQjRiX","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"Vqq8E1AixqbXVK6n7hMZK","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"T1DnoU2OiZHdbjFTXSchZ","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DKAM61yCoJQUSzk1VZJxi","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the Image Layer to match the given size

            ","params":[{"identifier":"w","optional":false,"description":"

            new width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4WRdp1_ha-Qw_35AV7I7n","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            reverse the given or current animation if none is specified

            ","params":[{"identifier":"name","optional":true,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_ypIA07dFHkDo4dOBGadT","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o3LT24k63WTWXcVOe4eTX","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_wFGRct_1IW0CoOzuOFaz","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dFnlwQi4exG99f2CiYxXB","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

            force the current animation frame index.

            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

            animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yPebe5ezwRkGub9KMYKoz","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

            set the current animation\nthis will always change the animation & set the frame to zero

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

            animation id to switch to when complete, or callback

            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

            if false will reset the elapsed time counter since last frame

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yQbcyxQvtEoVFkpsWkTJ2","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bzX0hwr5RsNJAStEBfhh4","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

            change the current texture atlas region for this sprite

            ","params":[{"identifier":"region","optional":false,"description":"

            typically returned through me.Texture.getRegion()

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mmTplW92h_pE3-9Ehhlt0","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5QK5G99VsAnKrqx4LNUNs","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"O_G3nrr0n3Y_gK06Q0TPB","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"acj79qvfBuMLtbcurfU5Q","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RxrPcJIJgCNGA0jWFAkCp","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Myl_JX6_hZN4rb9yhysNL","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V79I6_CoQsDH6DRGGuK00","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FXRFtO6G471TFTCkK23fc","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NgzhhgM2v2PLI9yq-_nT8","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pUS8LU40TLR9Myiznr-z4","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DhEf_juk42kbJUWOVP68W","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this ImageLayer (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"548bVPonBopGTiN-vAe0d","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            update function.
            \nautomatically called by the game manager {@link game}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Sprite is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7ykn_4qRUrHNKsMW30HOa","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"MFYJgkAh35VWeTceYd1Oa","name":"Light2d","brief":"","see":["stage.lights"],"type":"ClassDoc","description":"

            A 2D point light.\nNote: this is a very experimental and work in progress feature, that provides a simple spot light effect...","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"hU8-yjJhpeZHl_mnDYqfR","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IarbOdE6Xle3oNvg9mauK","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Y0pwNnW1RkCcQ--Wy_i5","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WiCFnenpnEPeLhWox37On","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ash8lzjYYbbmhdigj4S3-","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UmQpcV89SHqd0YOThCMY1","name":"blendMode","brief":"","defaultValue":"\"lighter\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the default blend mode to be applied when rendering this light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JNQZgB9kySKCgu-jXfqww","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WItEgIjRVkLQYfjPt51Uf","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4CatFeCWzOJFfCXg2L9D0","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V9bqykUitns3npVs8inwN","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tO78phSNA6Igu38jvQy5r","name":"color","brief":"","defaultValue":"\"#FFF\"","scope":"instance","type":"PropertyDoc","description":"

            the color of the light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E3-BepVnhU1QgwdrsyZ-x","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"knc3hbdrRODtmFo6wIg56","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8uR0JpET2MkdN0pLLz5Zx","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b0SqVSbn5tL8xL-9mB5L7","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YmViTkW3rABku7WGeDMe6","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VjHClOM07BgR7fkh8fNPM","name":"intensity","brief":"","defaultValue":"0.7","scope":"instance","type":"PropertyDoc","description":"

            The intensity of the light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4YYEsarHEUd7JZxSVev5u","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_6Cme-ZYjmG2fEqOyshUs","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TbATTz-CzPGOgWcurD6MU","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qshr8ShMkDuoMy3YdNjoj","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"797iTrnXqJHuQKe8JYADa","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4BopFyrhyvGvvFYOdk5J5","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IdPXbxvefJ6fcvs26N6X_","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ds63hJJgTYZD3wDrzBoPr","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nm4mamPrWMO9FCRiaSZfj","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EsV-yAyTBnlaN4bhoHW4K","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nldDptZxY7qFNLtKYxfYD","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TgZCElic-OmMohcLjqTmn","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ibU2c9jxYiQC-z96Ub-aO","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WJGLGU2m83Wsb9S9rDKZa","name":"radiusX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The horizontal radius of the light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lpoxkNdJeXD6UdNdwGnl1","name":"radiusY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The vertical radius of the light

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xlVNxcDQhHBWLGt5s1O90","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HF7XO9aqu3Zy-cie_bbRC","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rhy_NwX5x39iQ0xwKPR_U","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x9rTcyjb3ME_3ZK6mSXw6","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yxymIrSNGS__zvWnwBXPj","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b1wt9fvvBYNemvK_qT_3J","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sfw_QO84cBNarTCOpLc0-","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8eBLqVcbk6Pv8e1t9QPz9","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NnH_D4M-SOQZxujetQtji","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NmyeYgRHMKIoJk0Ka1Roc","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LVHnAzl8Q_Rtt9udCyhrH","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            The horizontal position of the light.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            The vertical position of the light.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusX","optional":false,"description":"

            The horizontal radius of the light.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusY","optional":true,"default":"radiusX","description":"

            The vertical radius of the light.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"color","optional":true,"default":"\"#FFF\"","description":"

            the color of the light

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"intensity","optional":true,"default":"0.7","description":"

            The intensity of the light.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cP2LpqLUmDWva0dPVVh0b","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OieGRmtZCfYwCkKp7gYV6","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VdzpgF9N4X9iKNzmkjroZ","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bOBSZZk30fJi5sJOputmG","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LXR78RKqucv0CpeocsPHR","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_gN6fLp3cbp_BpFWFe0cV","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wGQ5sUhXw6LHGbq3sW4C4","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Gr4LufcRN3QaloLb29BBq","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DbAAOMp999ebRYxuIY7kn","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ecMwOIbh2wY1Xyk8H_jLy","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rBbFA0cQZiS7o_3XIVO1o","name":"getVisibleArea","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a geometry representing the visible area of this light

            ","params":[],"returns":[{"description":"

            the light visible mask

            ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4pWVzUPbpmRYvuaM-q5Qf","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"e4BpxlLW0LAiv3HYE6DcO","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"e7EaMFAkRwctSVc6AQSNV","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VYGHoweKPaa3z-diS14ah","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kdgR91kU2EZHGn0P3wSZL","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y2lnaEHmvtVyZXtpMQ1Ff","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CnNQp6Ujz6QYpuYu8mvQs","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"0VhqI3YLk0xOl2Rtq2vyW","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"dvz0agt1MI91w46-zspzJ","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"a3PfLK0jjG_ZzUTZ588OA","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dQ2lJyWeyC3mnCIxh2rOB","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k_4y5MTxRX7zsC90I5XUl","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"b9acARUOH0duTEYBnNa1k","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"giNc1PIyb5Fv4XEnDwg6V","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cTAOrJIVs97X0kF4kvmED","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ojkVHUT7lA4EpWs3thNAR","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z33hkXlwJjeuUU9se2H1F","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"JomAjP320o-Rr5yW1zkxI","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QNAdG5fI-hmbDtfboqJek","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N7Qn-HSB5o_ZIgSUGhYcK","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PbTF0gR5da_B0arQinegJ","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P_RlWjB74lunPShvZAuNP","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ai-yBs2NACeEzOmhBG4Ee","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NzcidrNzfXXiu2fmj-4qW","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"H-VaRiaQJbnaXAVgFUrBh","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PRq0MFhjYRdr5m176ODN9","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this Light2d (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5ayPOnbpj4nsvQf_fIvvk","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"ilcaURqOpxD8j44WGMCqn","name":"Line","type":"ClassDoc","description":"

            a line segment Object

            ","params":[{"identifier":"x","description":"

            origin point of the Line

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","description":"

            origin point of the Line

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","description":"

            array of vectors defining the Line

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"iB9J3aZ6lMLjYVzOQ5Dv4","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XkDd6pZRV-d5WRSiSKosU","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eBo5YA4C_ygHhRM-1B4Zi","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vNbnep7R9WTmNUoMqse24","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this line segment

            ","params":[],"returns":[{"description":"

            new Line

            ","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H20EGDCTW5hYPZdsXVjIG","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","description":"

            origin point of the Line

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","description":"

            origin point of the Line

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","description":"

            array of vectors defining the Line

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[]},{"id":"GpLbPi480pzmJgDMyYP09","name":"contains","brief":"","examples":[{"caption":"","code":"if (line.contains(10, 10)) {\n // do something\n}\n// or\nif (line.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the Line contains the given point

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to check

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if contains

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aJYaPMfaOXDeECVT2swql","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Eyh65VDhTLAqtm3h9h8Fp","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"kOA9K63KTABBdsZgTQ8vZ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Eh6AoCf_tPumIvNXAN3Vi","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision edges and normals.\nThis must be called if the points array...","params":[],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X7fT4SZfKi2IZbeyh8g7r","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CiFMSzrmmw8zAHAj6gZrk","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given scalar.

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PSNYGKtiU-W_HEpg1b0__","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DB0KfI9AMP4DjLHUgrF3u","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the Polygon

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2> | %3<%4>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o44oIWzYiEYbuauz9LHjI","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CA72fN4ik3T2_9tlpHMds","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fSGC4gHUZjtGJ5m1M2FeD","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bQsu5OzHqFI38YwlVY0bI","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rtm1HFcSDxTZl4mKckdEI","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the given transformation matrix to this Polygon

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TlshmiDPBNlYtcYjsE2i9","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d0RqyQFcUGfm_ZeSUxsu8","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"lr1YRcmSclzRwgMGLmd0r","name":"Matrix2d","brief":"","type":"ClassDoc","description":"

            a Matrix2d Object.
            \nthe identity matrix and parameters position :
            \n

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"9gDkbvKYqwHBVTUGs6OQR","name":"tx","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

            tx component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PFdNkbiJhcj8UMaDg7RWT","name":"ty","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iDJ194lQFmiynYAbMpu4Y","name":"apply","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the current transform to the given 2d or 3d vector

            ","params":[{"identifier":"v","optional":false,"description":"

            the vector object to be transformed

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            result vector object.

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"1clTk4gh9dj0xbW3XQiKg","name":"applyInverse","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the inverted current transform to the given 2d vector

            ","params":[{"identifier":"v","optional":false,"description":"

            the vector object to be transformed

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            result vector object.

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FL4sBEug3xGYBKcUAv_pF","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clone the Matrix

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oNsJslrEWCbhsCnC_vL2z","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"args","optional":false,"variadic":true,"description":"

            an instance of me.Matrix2d or me.Matrix3d to copy from, or individual matrix components (See {@link Matrix2d.setTransform}...","dataType":{"tokens":[{"value":"Matrix2d | Matrix3d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"Matrix3d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2 | %3"}}],"returns":[],"extends":[],"implements":[]},{"id":"wkneI5ajxvEU0L38wJpJe","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copies over the values from another me.Matrix2d.

            ","params":[{"identifier":"m","optional":false,"description":"

            the matrix object to copy from

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yQFY4WTF5psqAv2FnXK4s","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the two matrices are identical

            ","params":[{"identifier":"m","optional":false,"description":"

            the other matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if both are equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fHRCh_mxIUzfEyMIF8CpW","name":"fromMat3d","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copies over the upper-left 3x3 values from the given me.Matrix3d

            ","params":[{"identifier":"m","optional":false,"description":"

            the matrix object to copy from

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ti9ptCSNGNRHoLdbNsfDP","name":"identity","brief":"","scope":"instance","type":"MethodDoc","description":"

            reset the transformation matrix to the identity matrix (no transformation).
            \nthe identity matrix and parameters positio...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fe9SX82_WQYwW57a-3t5M","name":"invert","brief":"","scope":"instance","type":"MethodDoc","description":"

            invert this matrix, causing it to apply the opposite transformation.

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"f6SV7n5dI-7yB_SKNxhkW","name":"isIdentity","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns true if the matrix is an identity matrix.

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dHD7UdTHj_eXXDn2GgdaZ","name":"multiply","brief":"","scope":"instance","type":"MethodDoc","description":"

            multiply both matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the other matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0j6AOBf8RvC0GIIPwdI8z","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            rotate the matrix (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            Rotation angle in radians.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2xFGTLWEdDLXpt_FzLF5E","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the matrix

            ","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fgA89sfjBN1sr4j9hs41z","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds a 2D scaling transformation.

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pR77Iklb3x-UZxvhHipvY","name":"scaleX","brief":"","scope":"instance","type":"MethodDoc","description":"

            specifies a 2D scale operation using the [sx, 1] scaling vector

            ","params":[{"identifier":"x","optional":false,"description":"

            x scaling vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bOn-7nADr0XODpzvnMBwP","name":"scaleY","brief":"","scope":"instance","type":"MethodDoc","description":"

            specifies a 2D scale operation using the [1,sy] scaling vector

            ","params":[{"identifier":"y","optional":false,"description":"

            y scaling vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KEzvv5g9ozCrcrxuA-gwq","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the matrix to the specified value

            ","params":[{"identifier":"a","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"i","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pbtPtvmZXLo8V4Nl30jDC","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

            return an array representation of this Matrix

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hF0DLuKxUnQD-6Lv84Yz8","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

            convert the object to a string representation

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"C8czb5UJzP9jWUX_wgys7","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            Multiplies the current transformation with the matrix described by the arguments of this method

            ","params":[{"identifier":"a","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KD1_i4pJL57kRMevl5i3I","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

            translate the matrix position on the horizontal and vertical axis

            ","params":[{"identifier":"x","description":"

            the x coordindates or a vector to translate the matrix by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            the y coordindates to translate the matrix by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KGwUTsxVDXKIgY0YxHQgW","name":"transpose","brief":"","scope":"instance","type":"MethodDoc","description":"

            Transpose the value of this matrix.

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"bmPXjnXUS4pM7-fZHoFqE","name":"Matrix3d","brief":"","type":"ClassDoc","description":"

            a 4x4 Matrix3d Object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"8x3EyizFM9maWfudjTKfJ","name":"tx","brief":"","scope":"instance","type":"PropertyDoc","description":"

            tx component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1-BGiDHNPEMp9-OaDhGT_","name":"ty","brief":"","scope":"instance","type":"PropertyDoc","description":"

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PhJKlNXdSRzSV3wnXex-L","name":"tz","brief":"","scope":"instance","type":"PropertyDoc","description":"

            ty component of the matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sSFycCp6c1jnvEzAz0vUI","name":"apply","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the current transform to the given 2d or 3d vector

            ","params":[{"identifier":"v","optional":false,"description":"

            the vector object to be transformed

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            result vector object.

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"G-ipPaqR-0wdoaFdNnU6J","name":"applyInverse","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the inverted current transform to the given 2d or 3d vector

            ","params":[{"identifier":"v","optional":false,"description":"

            the vector object to be transformed

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            result vector object.

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"HFPbE00PYS0K2gDBZlM3c","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clone the Matrix

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u0o87Baupyw1KwsdLODS4","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"args","optional":false,"variadic":true,"description":"

            An instance of me.Matrix3d to copy from, or individual Matrix components (See {@link Matrix3d.setTransform}). If not argum...","dataType":{"tokens":[{"value":"Matrix3d | number","kind":"canonical"},{"value":"Matrix3d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"T6ci9UdFxEC0gsy-5X7aV","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copies over the values from another me.Matrix3d.

            ","params":[{"identifier":"m","optional":false,"description":"

            the matrix object to copy from

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PwSFv8J2-IWTzGyFDgI7z","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the two matrices are identical

            ","params":[{"identifier":"m","optional":false,"description":"

            the other matrix

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if both are equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tK_BQjYwq4nEDfRfRl1KI","name":"fromMat2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copies over the upper-left 2x2 values from the given me.Matrix2d

            ","params":[{"identifier":"m","optional":false,"description":"

            the matrix object to copy from

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CmDwrZrBgrpW80-icQ7MY","name":"identity","brief":"","scope":"instance","type":"MethodDoc","description":"

            reset the transformation matrix to the identity matrix (no transformation).
            \nthe identity matrix and parameters positio...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pjblSALvSnimVDVgEbBbV","name":"invert","brief":"","scope":"instance","type":"MethodDoc","description":"

            invert this matrix, causing it to apply the opposite transformation.

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GlpSlVN6IW3ig62mX9V6v","name":"isIdentity","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns true if the matrix is an identity matrix.

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fkWWhq2y9e9cjRF2eaN8o","name":"multiply","brief":"","scope":"instance","type":"MethodDoc","description":"

            multiply both matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            Other matrix

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ps0T4bQNlRRm9mwDeyjza","name":"ortho","brief":"","scope":"instance","type":"MethodDoc","description":"

            generate an orthogonal projection matrix, with the result replacing the current matrix\n
            ...","params":[{"identifier":"left","optional":false,"description":"

            farthest left on the x-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"right","optional":false,"description":"

            farthest right on the x-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"bottom","optional":false,"description":"

            farthest down on the y-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"top","optional":false,"description":"

            farthest up on the y-axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"near","optional":false,"description":"

            distance to the near clipping plane along the -Z axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"far","optional":false,"description":"

            distance to the far clipping plane along the -Z axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"b3s1GFK6fpQQZ2zwQil0Z","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            rotate this matrix (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            Rotation angle in radians.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":false,"description":"

            the axis to rotate around

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1TYmE_LxN252BXCWB-8Pm","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the matrix

            ","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

            a number representing the depth vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FpbmXkCm6Bar5dYNxWpIP","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds a 2D scaling transformation.

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s2y18y0wGoYplDlCoTJem","name":"scaleX","brief":"","scope":"instance","type":"MethodDoc","description":"

            specifies a 2D scale operation using the [sx, 1] scaling vector

            ","params":[{"identifier":"x","optional":false,"description":"

            x scaling vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"04kLCc5QYlaEx4kHbuFmw","name":"scaleY","brief":"","scope":"instance","type":"MethodDoc","description":"

            specifies a 2D scale operation using the [1,sy] scaling vector

            ","params":[{"identifier":"y","optional":false,"description":"

            y scaling vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JNiEmTrCs18xMwGxZSY_L","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the matrix to the specified value

            ","params":[{"identifier":"m00","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m01","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m02","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m03","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m10","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m11","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m12","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m13","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m20","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m21","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m22","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m23","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m30","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m31","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m32","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m33","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NCEty9jUoLfzcOggG7Rl8","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

            return an array representation of this Matrix

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wQz-2Yl0Yf9bbiSX0YOyD","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

            convert the object to a string representation

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"s4-Nb3jD30d8m6AUM_pwE","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

            translate the matrix position using the given vector

            ","params":[{"identifier":"x","description":"

            a number representing the abscissa of the vector, or a vector object

            ","dataType":{"tokens":[{"value":"number | Vector2d | Vector3d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            a number representing the ordinate of the vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

            a number representing the depth of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pCuhaWtk3xpxjROvPj7pW","name":"transpose","brief":"","scope":"instance","type":"MethodDoc","description":"

            Transpose the value of this matrix.

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"Qw2JKQdNxtUf2k0KofA-E","name":"NineSliceSprite","brief":"","see":["https://en.wikipedia.org/wiki/9-slice_scaling"],"type":"ClassDoc","description":"

            A NineSliceSprite is similar to a Sprite, but it uses 9-slice scaling to strech its inner area to fit the size of the Rend...","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"_JJZffQHMIdzZhUha_gPw","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zGFrHxyZANhLtAeL3ZWgD","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TuFjJRv00-uj1lolOEDzt","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kfQHKSFezLKu-zC37y3Kr","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HRL9MQogVQVkqH6-hDI77","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            pause and resume animation

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IsLKXU1XU6dRMrwgwJdlG","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gpdo4ExUFJorPiB6fTVFw","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hrvlCThl-A-SBKH3tKP7u","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AWUWFHotrur8E-m5cwSQX","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ustw7konSW9NaoWZg5OKt","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fxQPls3VGKc-bzFSdjUiu","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6n3ydrSiFEG7tgxyc3ILg","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-2oGPsFmZpcs9s54b9ZRH","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WK1CmqmgwRx6X_mdeYv3k","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fe3BDFfETqcV9R93cPiLF","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CVs6E9FUwrmhOXAp1RcGd","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4ZgVcSpIDV-uT6dabD_A","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            height of the NineSliceSprite

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XNh08R_bSsXXSevbAPQ4E","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XSIStayu53BYu2zzWhnD-","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"68OUKM5tZpYj_Mc3OZ2Bd","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MUZOQTuSpP1tUEBJzqnDG","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hk3-HRmwDLukAA1C8jCVM","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LME9j77jw-THviwZeh_lr","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YJ1YCktph8UlDo6JdCoXU","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m_2DjOz4T1CbbK6_MoeYN","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_AwFphtvo2xJle5K3_pgT","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dnof-bdZT_GTGxqvsRdwX","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9IxjOZYm9OpgRi0TcryBc","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

            global offset for the position to draw from on the source image.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mc-RzTbbXUCkIk2UIbv_E","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eKfqta1iAP8nolX4kOp-W","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cMQ71dpKkifP1OMP_qGv7","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oEOpeWukMJbt8E5h25myB","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wnTql8hAjxt5y3y4H-Y4I","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z8IXz4FymskCPwSyweKF0","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SQAN3ksR2oyepVpQ-Oky2","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sp8OIV7WyD4CNVl8NMdEK","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pr_9q_6U7wJ6nbXbmLvG3","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R6dmqdfCMTuxrysNjH88Q","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dpc5WsHTErRaUa09uuPU6","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            width of the NineSliceSprite

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ze2G488vAYNPyTZHpuGUR","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            add an animation
            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

            cycling speed for animation in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            frame amount of frame added to the animation (delay between each frame).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xbBNMZmlNz86qmZk6ywHu","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l2oQDGDTuVse_rW8p8Md9","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QK8Q363D1hqJ5HUJpP4Sx","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S2wBxwx_R1kd0cASlu7OH","name":"constructor","brief":"","examples":[{"caption":"","code":"this.panelSprite = new me.NineSliceSprite(0, 0, {\n image : game.texture,\n region : \"grey_panel\",\n width : this.width,\n height : this.height\n});"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the sprite object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the sprite object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            Configuration parameters for the Sprite object

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.width","description":"

            the width of the Renderable over which the sprite needs to be stretched

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","description":"

            the height of the Renderable over which the sprite needs to be stretched

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.insetx","optional":true,"description":"

            the width of a corner over which the sprite is unscaled (default is a quarter of the sprite width)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.insety","optional":true,"description":"

            the height of a corner over which the sprite is unscaled (default is a quarter of the sprite height)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.image","description":"

            reference to spritesheet image, a texture atlas or to a texture atlas

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | string"}},{"identifier":"settings.name","optional":true,"default":"\"\"","description":"

            name of this object

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.region","optional":true,"description":"

            region name of a specific region to use when using a texture atlas, see {@link TextureAtlas}

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.framewidth","optional":true,"description":"

            Width of a single frame within the spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"description":"

            Height of a single frame within the spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.tint","optional":true,"description":"

            a tint to be applied to this sprite

            ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.flipX","optional":true,"description":"

            flip the sprite on the horizontal axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.flipY","optional":true,"description":"

            flip the sprite on the vertical axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.5, y:0.5}","description":"

            Anchor point to draw the frame at (defaults to the center of the frame).

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"JxpkWoqx4ak9VwImIS6kI","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gvgu8HIwlNQx-50tL5Ozl","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wkkPCJBggj1M6-zE2TavA","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2_GZCmTp_jcfBHFqUZud5","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8OQbzJJ5n5KWhplusQ3D8","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

            make the object flicker

            ","params":[{"identifier":"duration","optional":false,"description":"

            expressed in milliseconds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

            Function to call when flickering ends

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nx2rYBVsUYp4oKzv6Q5P0","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jO2ati1W1wHZ0bd8CKFGy","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gzvJZkkqwa9Elp0wHJBV6","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qUvWiG6lQRE0DtM2J_Bpb","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_fdUuCGE06wi5dvPKLNJU","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current animation frame index.

            ","params":[],"returns":[{"description":"

            current animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"e-Og9EvgyUqQg6j3yTnNo","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"oABMbuEoooVueTGppSDBB","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nNqOtuayHaLcV2XFc54mt","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"T9jbsr-PaA0e_3Q6fKsZq","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

            return true if the specified animation is the current one.

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OPF5Kswosh2zGOSXLTQ4H","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"IoT_1ebuUadWsMr1SebIu","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the flickering state of the object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AWkFgJkarLSOROLX7hITL","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BAZcKzJkqOai2diCiMG7Z","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ii9fI2mmt4oMJln5hBo0c","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4F1tuFHInOajGPPGrifwD","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aZOD0FX1m6x5FWiCLaxuM","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"uxXMnDNMhezlXSBtPbGz0","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"N96_fIaSBYZc4jMiDyfCR","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aYruEWy2ZpER1lbAQrnkt","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iAGDmVtAOz2FhsagVFGIH","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            reverse the given or current animation if none is specified

            ","params":[{"identifier":"name","optional":true,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2FBZhX0m9XjgCN9HcgeiA","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QFol70r7GHuwX6ZdGiln3","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iecMmK9sYggYU_YJPTGXA","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y67kjVtnoD2DpgF9jU8DH","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

            force the current animation frame index.

            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

            animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6tuWckkLvjoB6Qfj44MbK","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

            set the current animation\nthis will always change the animation & set the frame to zero

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

            animation id to switch to when complete, or callback

            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

            if false will reset the elapsed time counter since last frame

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IShprQK_v1UWb16B06QnM","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WMT4ESU5vz-TDVDpsRuG5","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

            change the current texture atlas region for this sprite

            ","params":[{"identifier":"region","optional":false,"description":"

            typically returned through me.Texture.getRegion()

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FkMPDtsfJfUC0UVNlEqxD","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_bCU06l0_DjX80voKn2gb","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LGcDf7GeEjSSSOzuyDStB","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"RivT97tok-3w6UW78kaFW","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LxXj2Vml56mul9D1G91pv","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"um10jwPNJtE0D5c9V_jQO","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YGVul3yJDK-M4qz8U9FGI","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P9-k3MHuTQtZ0dH7CMedy","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"172qFdnhKWaqhSQJ8lvaC","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eO5naQUNEwOiah94WIW9f","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6mEgT-YcM4-kGHX9P1HkJ","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this srite (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bvR36vlqjjhqlvPK1lSsc","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            update function.
            \nautomatically called by the game manager {@link game}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Sprite is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hYkMBhH1rBDNDNMUWBCX5","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"5T6OeYVvsvscv7AezpdZv","name":"ObjectPool","brief":"","see":["{@link pool} the default global instance of ObjectPool"],"type":"ClassDoc","description":"

            Object pooling - a technique that might speed up your game if used properly.
            \nIf some of your classes will be instantia...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"2nD2n-rhCWr6znKGhjM8A","name":"exists","brief":"","scope":"instance","type":"MethodDoc","description":"

            Check if an object with the provided name is registered

            ","params":[{"identifier":"name","optional":false,"description":"

            of the registered object class

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            true if the classname is registered

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PlQjht-AM2dpzUAwsQIUw","name":"getInstanceCount","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the amount of object instance currently in the pool

            ","params":[],"returns":[{"description":"

            amount of object instance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4dWewWJe37Or4XmQZlQkW","name":"poolable","brief":"","examples":[{"caption":"","code":"if (!me.pool.poolable(myCherryEntity)) {\n // object was not properly registered\n}"}],"scope":"instance","see":["register"],"type":"MethodDoc","description":"

            Check if an object is poolable\n(was properly registered with the recycling feature enable)

            ","params":[{"identifier":"obj","optional":false,"description":"

            object to be checked

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            true if the object is poolable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"44z9J0y6_GkIubv9BF5ud","name":"pull","brief":"","examples":[{"caption":"","code":"me.pool.register(\"bullet\", BulletEntity, true);\nme.pool.register(\"enemy\", EnemyEntity, true);\n// ...\n// when we need to manually create a new bullet:\nlet bullet = me.pool.pull(\"bullet\", x, y, direction);\n// ...\n// params aren't a fixed number\n// when we need new enemy we can add more params, that the object construct requires:\nlet enemy = me.pool.pull(\"enemy\", x, y, direction, speed, power, life);\n// ...\n// when we want to destroy existing object, the remove\n// function will ensure the object can then be reallocated later\nme.game.world.removeChild(enemy);\nme.game.world.removeChild(bullet);"}],"scope":"instance","type":"MethodDoc","description":"

            Pull a new instance of the requested object (if added into the object pool)

            ","params":[{"identifier":"name","optional":false,"description":"

            as used in {@link pool.register}

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

            arguments to be passed when instantiating/reinitializing the object

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            the instance of the requested object

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"LqB7jK0TO8ACKX7Mviz_Z","name":"purge","brief":"","scope":"instance","type":"MethodDoc","description":"

            purge the object pool from any inactive object
            \nObject pooling must be enabled for this function to work
            \nnote: thi...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2TqnsP0a3BMrEkSRJyzwY","name":"push","brief":"","scope":"instance","type":"MethodDoc","description":"

            Push back an object instance into the object pool
            \nObject pooling for the object class must be enabled,\nand object mus...","params":[{"identifier":"obj","optional":false,"description":"

            instance to be recycled

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"throwOnError","optional":true,"default":"true","description":"

            throw an exception if the object cannot be recycled

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            true if the object was successfully recycled in the object pool

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DcNtnnU9kdsCmXCsoT2kL","name":"register","brief":"","examples":[{"caption":"","code":"// implement CherryEntity\nclass Cherry extends Sprite {\n onResetEvent() {\n // reset object mutable properties\n this.lifeBar = 100;\n }\n};\n// add our users defined entities in the object pool and enable object recycling\nme.pool.register(\"cherrysprite\", Cherry, true);"}],"scope":"instance","type":"MethodDoc","description":"

            register an object to the pool.
            \nPooling must be set to true if more than one such objects will be created.
            \n(Note...","params":[{"identifier":"className","optional":false,"description":"

            as defined in the Name field of the Object Properties (in Tiled)

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"classObj","optional":false,"description":"

            corresponding Class to be instantiated

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recycling","optional":true,"default":"false","description":"

            enables object recycling for the specified class

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"rYMKshixhHMDHARwvvIR5","name":"ObservableVector2d","brief":"","type":"ClassDoc","description":"

            A Vector2d object that provide notification by executing the given callback when the vector is changed.

            ","params":[],"returns":[],"extends":["Vector2d"],"implements":[],"members":[{"id":"7wR50oV8fW4jvvbgxdNWn","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"keQuISoRPzg1fh6SfvnOS","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            y value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9O7BJXFNYVErUyhuOfh-F","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector values to absolute values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VAwq_BEJewSCLnHwuZnah","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add the passed vector to this vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QXFAx0rGZEjsKFNmwEeh_","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle between this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"O7z71q6J8FF0D27Qxr9xl","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

            Ceil the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector2d

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sC93grzenUODMcVgPv5lB","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Ceil this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XSvNZEQDMXwARwpZs0kDK","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clamp the vector value within the specified value range

            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            new me.ObservableVector2d

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XbuZxERfjM7mPepswRgTR","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clamp this vector value within the specified value range

            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FIcJmTjkH6emXOX5iXBQD","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a clone copy of this vector

            ","params":[],"returns":[{"description":"

            new me.ObservableVector2d

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0fpXiFXOjIwYovw4m-i-L","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"default":"0","description":"

            x value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

            y value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            additional required parameters

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.onUpdate","description":"

            the callback to be executed when the vector is changed

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.scope","optional":true,"description":"

            the value to use as this when calling onUpdate

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"za5jkE4NeoIDlAfxPhf_u","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copy the x,y values of the passed vector to this one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yFSr7YjDx34Nio3zp6XHF","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the cross product of this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            The cross product.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AxB2EoPPRn2IIThsAyA6b","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance between this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8I7yXcbWOHlggulpdpt-n","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

            Divide this vector values by the passed value

            ","params":[{"identifier":"n","optional":false,"description":"

            the value to divide the vector by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CJ3hU6Ru_5EDsGhS0Jd1O","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the dot product of this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            The dot product.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kWvg737jQ-XndUTAKbxLS","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the two vectors are the same

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fnZ-FYvr19p3Rxkz-zQoq","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Floor the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector2d

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2FxDKtoS0FcPdYen7LTZ7","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Floor this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A7wOj4EIrHRp2Xv4eXPZL","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the length (magnitude) of this vector

            ","params":[],"returns":[{"description":"

            the length of this vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"auIpTLwr4pwTSQ5tTYJ7V","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the square length of this vector

            ","params":[],"returns":[{"description":"

            The length^2 of this vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YhAn2VY9oZKj3y3YLsbPS","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Linearly interpolate between this vector and the given one.

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"alpha","optional":false,"description":"

            distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H4YipBxxwb5ZntNHc3TeQ","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector with the maximum value between this and the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lZB712hmcyiNUwp5jrNgJ","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector with the minimum value between this and the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Dq6HgXRCKeZzzUSSu3rEj","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

            interpolate the position of this vector towards the given one while nsure that the distance never exceeds the given step.

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"step","optional":false,"description":"

            the maximum step per iteration (Negative values will push the vector away from the target)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PDQLgjEuXzdGNktmE8V-Z","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Negate the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector2d

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xv5UgZ4UKiuOemlhlUlPW","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Negate this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zc5-TKTXpR-4b2VBvHSYZ","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

            normalize this vector (scale the vector so that its magnitude is 1)

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tpAltqsSTvtZX2924iGkl","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

            change this vector to be perpendicular to what it was before.
            \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2B_9QUvvWbJHGHHG4IXgb","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

            project this vector on to another vector.

            ","params":[{"identifier":"v","optional":false,"description":"

            The vector to project onto.

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-x88p6sP8ZLMXTuWZ9a1O","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

            Project this vector onto a vector of unit length.
            \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

            The unit vector to project onto.

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oCibkRlzJki27iUN_86_U","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this vector (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VwcXRd24UTOp3B-EhFr0H","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            Multiply this vector values by the given scalar

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-FlarXro2fAWKfhlC1IxJ","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Multiply this vector values by the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Uwl3KqdOtCMrtr_T3I_04","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties to the given values

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4BLZHp8WQK6mEwOMByGW4","name":"setCallback","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the callback to be executed when the vector is changed

            ","params":[{"identifier":"fn","optional":false,"description":"

            callback

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"scope","optional":true,"default":"null","description":"

            scope

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OCxGTS27Vin-05Xcn_dfO","name":"setMuted","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vector value without triggering the callback

            ","params":[{"identifier":"x","optional":false,"description":"

            x value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            y value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ho9XB4Z-kzrevTLb8qT3E","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties using the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"THdOgFAtCVfuwdGrK5gsl","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties to 0

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TyeMsPBhw3oAVmjDCokFk","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

            Substract the passed vector to this vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5KZJfxbjvAjtM24ahqb6k","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            Convert this vector into 2d coordinate space

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m3Aj-xLKXZQ0ESf5K8QsT","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            Convert this vector into isometric coordinate space

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8DakxbVds0k7BpcbXJAPH","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

            convert the object to a string representation

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"7C7yAbxE3b-K2X0LwvRa5","name":"toVector2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a me.Vector2d copy of this me.ObservableVector2d object

            ","params":[],"returns":[{"description":"

            new me.Vector2d

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"f4IYD7T7dem_ZkGa5_8IJ","name":"ObservableVector3d","brief":"","type":"ClassDoc","description":"

            A Vector3d object that provide notification by executing the given callback when the vector is changed.

            ","params":[],"returns":[],"extends":["Vector3d"],"implements":[],"members":[{"id":"ojOlYfOlTdx8UGaXromEn","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            x value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fwC6bOpZK_R-cGYEuKDv5","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            y value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w7feRwkGqrIOv38fdoHz0","name":"z","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            z value of the vector

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ukbnDKYt1_d12oRlxjDEm","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector values to absolute values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pdBAhuSDgPTySnzgLkGag","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add the passed vector to this vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fra8hhNdTp6tUqAxRWy_X","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle between this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mC3LIts-nPjRPMMFS2-gB","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

            Ceil the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector3d

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Dj6ZV6mEyCKg6vgUTkenS","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Ceil this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XmbgTRIPBKhmw3goJh45t","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clamp the vector value within the specified value range

            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            new me.ObservableVector3d

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jHXWg5hmlypzNn8RlEP3m","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Clamp this vector value within the specified value range

            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wo2f64ZZfIXiztqU0TByD","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a clone copy of this vector

            ","params":[],"returns":[{"description":"

            new me.ObservableVector3d

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_QNyTkewHvy6D5Zrk3cUJ","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"default":"0","description":"

            x value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

            y value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":false,"default":"0","description":"

            z value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            additional required parameters

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.onUpdate","description":"

            the callback to be executed when the vector is changed

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.scope","optional":true,"description":"

            the value to use as this when calling onUpdate

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"0JQkC6f1OIkaf_oDn5hD0","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            Copy the components of the given vector into this one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2y3hTSp3D551eRyAe3Ndu","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

            calculate the cross product of this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X1ruCRaIonoqqT7akkbIc","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance between this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ltuU8zPwxZNk8XrnVo510","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

            Divide this vector values by the passed value

            ","params":[{"identifier":"n","optional":false,"description":"

            the value to divide the vector by

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X3B9ytHhgf9fmHw3jzSyv","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the dot product of this vector and the passed one

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            The dot product.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7zZpufqjl69DWTDsiRwun","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the two vectors are the same

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"32nvXXz199jZOgIZ8orWz","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Floor the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector3d

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YHHgkzab1p_O0MvUpiPN7","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Floor this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MYhh8Y6Hfl45murREQ_nY","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the length (magnitude) of this vector

            ","params":[],"returns":[{"description":"

            the length of this vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3-FaYbjwNQnvsW4R_UviM","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the square length of this vector

            ","params":[],"returns":[{"description":"

            The length^2 of this vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5mXwL6ijo98uZkQDydxJA","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Linearly interpolate between this vector and the given one.

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"alpha","optional":false,"description":"

            distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dmybb8Y80nhE78BnDy9J-","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector with the maximum value between this and the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Si5Ld2OEW3Y0XOvSKgHqo","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Update this vector with the minimum value between this and the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EGPEC8zVzJSKm_nZddTcg","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

            interpolate the position of this vector on the x and y axis towards the given one while ensure that the distance never exc...","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d | Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"step","optional":false,"description":"

            the maximum step per iteration (Negative values will push the vector away from the target)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nekMPwuKXnOpND_7YtEZe","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Negate the vector values

            ","params":[],"returns":[{"description":"

            new me.ObservableVector3d

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UY0PxspohRll_sUaUKoI7","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

            Negate this vector values

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F2BNz26w92vzEnqDvhwbX","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

            normalize this vector (scale the vector so that its magnitude is 1)

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_oYdkbaXqwHqiMh2LfC0b","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

            change this vector to be perpendicular to what it was before.
            \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0DI7OMUQN_MdJdn0iRzM2","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

            project this vector on to another vector.

            ","params":[{"identifier":"v","optional":false,"description":"

            The vector to project onto.

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gqZGzq_uBc3zAPoeg5QJg","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

            Project this vector onto a vector of unit length.
            \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

            The unit vector to project onto.

            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IzN3BF4Y8_LSxxx_EA4kx","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this vector (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around (on the same z axis)

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TFVd-VhFs1dctxOM4rpCL","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            Multiply this vector values by the given scalar

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TkyI2DbkWxlx3pp3MCpLZ","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Multiply this vector values by the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZZ_eEK7UAJkWm-e1VFSFa","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties to the given values

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fggl1_AqDQOL1loTKmG-g","name":"setCallback","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the callback to be executed when the vector is changed

            ","params":[{"identifier":"fn","optional":false,"description":"

            callback

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"scope","optional":true,"default":"null","description":"

            scope

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3OgqfpwrqnMgXHvejmObK","name":"setMuted","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vector value without triggering the callback

            ","params":[{"identifier":"x","optional":false,"description":"

            x value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            y value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

            z value of the vector

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yk75l63gWnr0476vKNj2U","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties using the passed vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wnfdl0_rUIOT2mO0GNXV1","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Vector x and y properties to 0

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pT9att2qSSWUsJ0PfIdBx","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

            Substract the passed vector to this vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yhPjtkAc1LArO0SUVgXUQ","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            Convert this vector into 2d coordinate space

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"y4mILM5App-8QH2jYSy4G","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            Convert this vector into isometric coordinate space

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yFpbgQo7TZdMnMFmRCTyo","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

            convert the object to a string representation

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"FS5LUfqMwJxoJ96TAzcYq","name":"toVector3d","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a me.Vector3d copy of this me.ObservableVector3d object

            ","params":[],"returns":[{"description":"

            new me.Vector3d

            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"O568bZvO3JqZ9io7vP0GV","name":"Particle","brief":"","type":"ClassDoc","description":"

            Single Particle Object.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"mac0UMZWaiwxs1reUc8QS","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g3zVZ8bLOtwepNvXl-ty6","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FS0nxQbhVuxA6xuRN06Pq","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O2Jr3YBmMp2GEelHz0jyL","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kZA9kU5aivkabWmveyy_Z","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pp3IgqZt9JFyg-DwLtqVO","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DIe-M4XIfrK95abxjvwUY","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kYD_zjk4X1QNrad3VoBTc","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gXAx0c2nykZKyPYHDBUt7","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qYwC3kNYTkYJ4PFq0oYTi","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ByEVWpEeQnQlOojwodM2","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7Z97ujQ6jmjSCweK0U5l9","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3bwcnhnafkkMl-Z7xUPv1","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mNT92N6KqiYeyeLol6_TQ","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WakFhUoZz251kkn0MQV-w","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0H8oPpyDaXzyck2WprFGo","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eKOwJIapZ_Bpejc1RFuhd","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QQ9gX1OFt-UblXm2i6a6A","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bmuO0Gv2GJQJjjBi-9NbL","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x8FPQAmGVTbQ9-FTZEz3g","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_v77OZbn6cs0Io37R2lR6","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4zsa7ZW1sj0C1TYFw9YMf","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yVFQrfA2UPVJLVIGTElRF","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TdnaNNveXt14I4jy4wXOy","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NgJ_n1TuUCr60WEMKyxNJ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ppNA7QpRqNPO-dye8IY-5","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k5WHcsmHszmM43SSRiJYF","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_rIRzqv4byrJyFlyUOvkp","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WyelPE5O7hYUz5IOpMEfm","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X_h7IE7Om2YWB0DfR7gq6","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mq8qBvHvEeqG3kg4fsrbb","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7pH86fliB5BCFzuDye2mC","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jsgoiPq_wropqG6SyVjpQ","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nuPGTHIUd_jCRKU1owgrS","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nJqcwkE8kKmfcK_pNHrw-","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fql0qGRTclA4YtfmpYQ35","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IfCxL_upSusEaSq6z4xLW","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k-XBKHXZALwWOTaFra-qY","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tCBTSdsTRm7DwLB_qg8I5","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"emitter","optional":false,"description":"

            the particle emitter

            ","dataType":{"tokens":[{"value":"ParticleEmitter","kind":"canonical"},{"value":"ParticleEmitter","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QH7rm5RWKAj879kOJc9Dj","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4hN7jbdoDLjBUCcod2sn0","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VCeKCvm6l9gii8fgFcZsC","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B1SRoK4bNDaQkNekV-rTc","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"G8s5yIjLULu5RsLwOWQnA","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"xC8xlsLcGDtvhi0lcEqb2","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fJZuftC1ebWaLdr5IkR64","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"us6BvVJyQsDIJbnl0TQdQ","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gQ4A2BNEZ3ae7qyNfdxjW","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"af5Ee-X1K3kMdh5OpU_VF","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"K-q5Zu0AKJwB4yCVA-ilU","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QT11e-MSMBRRBL8uwh-ye","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JKp6FsqYazpqPUKWpFC5o","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vr2NZOhKKilU2GvjDDJZn","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-Sucz9vQicUB_D6RLX403","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"a9mepzksWuugZFT54NJBs","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RmWuFYEaTXf-4pRCL5LXN","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"szvtzzPr2bBaFtdZAM8zB","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"PUDjlYYHQeu8oYP-ISX6d","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"ju-pWW4ImVNfRYBowsczv","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qcLGVRjlRjhxqGYE67UHW","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kh58wMlAePC5bzm28pYFV","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5MbQdrErSeuMuok3S7zuy","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V_tVBqIsYxZrzeKZQpd4N","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RQPNflMkuj0wBhaTuhy-i","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wpRby0vFteRtI4AZXwPrv","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sNT6TPFDSVA18a66scJnY","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"usWAegeXjN-QsPhO7ZHQ9","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CNnJDQEufbNjojGBJs1Sc","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yTnWrqY9FzFvW1ncoVbRK","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yi860Et5SnNeFLINh6A7W","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tPLkI0L2tNB-Be8K8B9z4","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2wssgR2t_A93SPnEYCBJq","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XcqJKDrnyHKJAnnAJOhm_","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hh6aI_BtOL3qWqXNrsvEp","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"YG2vkLSELJOEeEc4EQruC","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u51-vxkbyWpWwGnAS5mOt","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"AhlNlOQ2LXNx1A3Q_hSms","name":"ParticleEmitter","brief":"","type":"ClassDoc","description":"

            Particle Emitter Object.

            ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"Px7qxEmoFj_Dql9ytMg4X","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9L9rAkH9hX5t8JDT_nboX","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n7-gFNHPcBm1Uv4u-Apn1","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PGO47wE1ydVCDlgQieHn8","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g3hJ67bD3GfkKninww15x","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            Specify if the children z index should automatically be managed by the parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n4GOuWePcUha-RkWBXr_g","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            Specify if the children list should be automatically sorted when adding a new child

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lK23b0sCjh7FsXBuoaJbA","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"spshtLoIij9pIymZEo2jQ","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a background color for this container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3whqFKpSdrXrd4lXa_cm","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sAKa-YLZPQadZ39x5VK_t","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O9oK6lv_TYYmMPaaj1v_P","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ABAozaYu65XKI4jot3jBX","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VQZzQtKpOmeBSCQDgpekO","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hnWx1-GP_FzAN0FXZLf6Z","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Specify if the container draw operation should clip his children to its own bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SadMgzyyu44oaTCvwj0Jy","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"18Ud7SN4iHe3tZqIVdh-R","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"meJ7Xi6rCDjHnmrlZj6or","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bLQWgrLDnKZ7CiHtvqOG-","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0h0k13NQKftO7J4aLO_Tl","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aPGRSF6M0iN6ogzclwkn3","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-HUNi6U5IfwriD57jI1XG","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iGI6tVLEaRtQ20GjHyig-","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A73RDC4q9jsSC4EJn8S1V","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jmDHlQtcCyBzpq_m7M-pu","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X7KcPohE5LT3XTO-Kaodn","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Awux7Hp_QPWzLAiYaIzfs","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LtbCQ2p_sVkC88S2vP0n1","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B-E9v_LP4F3qZIhkOvdTr","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dUPiYC0tvu-pBVikHQDUz","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bZc9MH1o3iMdNqBnFVmp1","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JKbN8Se2mAl53i9DTdAAF","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-HT02GWZqZs4LhXNAU_tL","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HMDvuNpl8U_EWTU86FkjP","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7s49TWNHAhDGZuAu4r7GH","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rOW2Uq0TWOdCZbFiPnpFt","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            whether the container is the root of the scene

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Tx7ZkS1pHQJfRp32twaVM","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the current (active) emitter settings

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K8_XlsLCjY5mfnII_5YVn","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l3Zye6WCt7CfliDU-q_Y0","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

            The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5H1QJ_WetVSqqQC4IAVPG","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7T20ra9It50UJsq_N7ghj","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r2lrHCV-hFELNuu5EGedF","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R39Vdb5HaR-18vNxg5ASJ","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xler2rzvIB4Ik9pcBsihr","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o8E8CAueyFnjQls5rY22t","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add a child to the container
            \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

            forces the z index of the child to the specified value

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the added child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AeIKBs2mJsoAjBVQXeK8d","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add a child to the container at the specified index
            \n(the list won't be sorted after insertion)

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

            The index at which to insert the child

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the added child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qrIjVKepM4ElRE1yJhcH_","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wC5nw9PzZLXHKxKQ7-hP3","name":"burstParticles","brief":"","scope":"instance","type":"MethodDoc","description":"

            Launch all particles from emitter and stop (e.g. for explosion)

            ","params":[{"identifier":"total","optional":true,"description":"

            number of particles to launch

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QT1-26xZ1A_bqyyFPKWU7","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HaVApwd6Rjb7uoGg43taU","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NldhNmhcE0piMsCuroX5q","name":"constructor","brief":"","examples":[{"caption":"","code":" // Create a particle emitter at position 100, 100\n let emitter = new ParticleEmitter(100, 100, {\n width: 16,\n height : 16,\n tint: \"#f00\",\n totalParticles: 32,\n angle: 0,\n angleVariation: 6.283185307179586,\n maxLife: 5,\n speed: 3\n });\n\n // Add the emitter to the game world\n me.game.world.addChild(emitter);\n\n // Launch all particles one time and stop, like a explosion\n emitter.burstParticles();\n\n // Launch constantly the particles, like a fountain\n emitter.streamParticles();\n\n // At the end, remove emitter from the game world\n // call this in onDestroyEvent function\n me.game.world.removeChild(emitter);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            x position of the particle emitter

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            y position of the particle emitter

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":true,"default":"ParticleEmitterSettings","description":"

            the settings for the particle emitter.

            ","dataType":{"tokens":[{"value":"ParticleEmitterSettings","kind":"canonical"},{"value":"ParticleEmitterSettings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VLuiqzcNy1_yft9LuOhn2","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"oaXxwlMx-gnAvviKzpSRR","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CUMo-ITC9wKGA3KsZSBTv","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oTyPER77jZF6vZgS3SpMe","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FOjLcskxt8P-ghLdNgBXV","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q50nHIP5AjLtMcl3Qctu3","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BOElTEQZNitHKmgauiWPm","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

            The forEach() method executes a provided function once per child element.
            \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

            fnction to execute on each element

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

            value to use as this(i.e reference Object) when executing callback.

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"d1233gVFz46ecXQYpaLjV","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3LkMb3mrCLAXsZlIck0xg","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"r3tJRUTGGyn1wZ4EXXXIb","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the Child at the specified index

            ","params":[{"identifier":"index","optional":false,"description":"

            The index of the child

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the child at the specified index

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q5sez4x0ExZVixqdas41X","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the child corresponding to the specified GUID
            \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

            child GUID

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            corresponding child or null

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NmSa7lbp2tZ9GJR0o-jw8","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the list of childs with the specified name
            \nas defined in Tiled (Name field of the Object Properties)
            \nnote ...","params":[{"identifier":"name","optional":false,"description":"

            child name

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            Array of children

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"LTiZBKBtjn_EbYKvxXXd-","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

            return the child corresponding to the given property and value.
            \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

            Property name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

            Value of the property

            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

            Array of childs

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"zSqZC63MDtihDqhkO1GQA","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the list of childs with the specified class type

            ","params":[{"identifier":"classType","optional":false,"description":"

            Class type

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Array of children

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"rrERFkKn9ti58FUoAH5Ad","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the index of the given Child

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

            index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8FKieuQU1xAgzng74o2Gu","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

            return all child in this container

            ","params":[],"returns":[{"description":"

            an array of renderable object

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"bK8yM9Qh_y0g9EUMKzXls","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"prelCNayKNgbgbnDzd-_w","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the next child within the container or undefined if none

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

            child

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NDZWNiH_nrlZzDIvpaAuA","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9ENTOZ6QRka17oAYWHov1","name":"getRandomPointX","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a random point on the x axis within the bounds of this emitter

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_dGQmAzQq-QtEDJ6UcB1_","name":"getRandomPointY","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a random point on the y axis within the bounds this emitter

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5Zvaf4j5PuiOnFEs6yqqw","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the instance of the root container (i.e. the current application World container).

            ","params":[],"returns":[{"description":"

            root container

            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BdttMdNfjf9TaAkXP7DBU","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if contains the specified Child

            ","params":[{"identifier":"child","optional":false,"description":"

            The child object

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"l8_sYhzxhAPrUnXaT6P0C","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

            Checks if this container is root or if it's attached to the root container.

            ","params":[],"returns":[{"description":"

            true if this container is root or if it's attached to the root container

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DwUgkpY7Kija_bBfkBiM9","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kUVvD_Iy5VcvxFYA2ku0Q","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ih5Q1PdpX-H46wESwlsYa","name":"isRunning","brief":"","scope":"instance","type":"MethodDoc","description":"

            Emitter is of type stream and is launching particles

            ","params":[],"returns":[{"description":"

            Emitter is Stream and is launching particles

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"c9uSmkXhMj6aWhT_jiB6r","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cOXBZ6p10w9l2zHJ5QStL","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the child in the group one step backward (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"iTdrz9MRMyuoj4CMMU6xP","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the specified child the bottom (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"E47WWA9T2eMbaGajIROV1","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the specified child to the top(z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"Hfs6L1JIvteic0JGpz7af","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

            Move the child in the group one step forward (z depth).

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be moved

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"oqohuwfATEOEpxg__EaZ-","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

            a callback to be extended, triggered after a child has been added or removed

            ","params":[{"identifier":"index","optional":false,"description":"

            added or removed child index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Uc-FsSQE3_KFuhITIu9Nl","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Q6AoSfaaXgIUgOnlVYFTt","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1XP-9AB-9t1IwSyfmqhl_","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qVzc5MWgi062PbWopkA1G","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"uAik4nE12EM1mHHvBfr6_","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"vqAkI8TeC8oiZNwhxLXMt","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4zo86H8f3CVuM05QTRWnt","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

            Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

            Child to be removed

            ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

            true to prevent calling child.destroy()

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"oKFg0m3rlWRnysCGmzc5S","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

            Removes (and optionally destroys) a child from the container.
            \n(removal is immediate and unconditional)
            \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

            Child to be removed

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

            True to prevent calling child.destroy()

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"fwqPLzLkAt21E9iJnKAAD","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

            Reset the emitter with particle emitter settings.

            ","params":[{"identifier":"settings","optional":false,"description":"

            [optional] object with emitter settings. See {@link ParticleEmitterSettings}

            ","dataType":{"tokens":[{"value":"ParticleEmitterSettings","kind":"canonical"},{"value":"ParticleEmitterSettings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AFpJ_AufcyR8QWpFAwblN","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5fhUICEmVDKGo3EiqIhr-","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tR2C3OiiW0fM8VoXBSls9","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8hoS6lAyu5GU0zQKpXhUO","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Bnz1v-RkiqWxX-9QcK8Lk","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

            Automatically set the specified property of all childs to the given value

            ","params":[{"identifier":"prop","optional":false,"description":"

            property name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

            property value

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

            recursively apply the value to child containers if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"X85P7R5skxDcyd-SKetMk","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YccXDO7Mnm52knKfFgqEK","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q2clzR7z5aU0tqTXwvasz","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BdFImLHrRQ-uH4ky3ZCOc","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QziATLnJlfG7fiOivaQXz","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

            Manually trigger the sort of all the childs in the container

            ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

            recursively sort all containers if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"p2HLlb3ZL2aWTbhkGaYM_","name":"stopStream","brief":"

            Stop the emitter from generating new particles (used only if emitter is Stream)

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e_UAAOC0FRfTsMlgZXziO","name":"streamParticles","brief":"","scope":"instance","type":"MethodDoc","description":"

            Launch particles from emitter constantly (e.g. for stream)

            ","params":[{"identifier":"duration","optional":true,"description":"

            time that the emitter releases particles in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bc-tLnNntuslJI9UpkIAQ","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

            Swaps the position (z-index) of 2 children

            ","params":[{"identifier":"child","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

            Child to be added

            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"Vhxwk6rDklTSZy1p_6Hg8","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fAMQu5I3QU1i4WNR0m5LV","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"04BfbCyVHvH-dzXSKoe9y","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h2Zh2qvRzC5PKLRgsO1Tv","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vT8Xx-H4mTanfanFrZqRL","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cEnsgGzJ7Ut1rNL3Pm59A","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pcceUjFRSbZiOE7Kg8aNS","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this container.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this container bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9L1QPhprF-eXtebK97o56","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this renderable (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gZqES0npl5Xvn3hk-3ahO","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            container update function.
            \nautomatically called by the application update loop {@link Application}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Container is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Hucyd6B-VonXfHrER7uEP","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"h2CQ67E6KfUWGorXNjpda","name":"Path2D","brief":"","type":"ClassDoc","description":"

            a simplified path2d implementation, supporting only one path

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"KPa1AgtsTxsYqdEk5eLro","name":"arcResolution","brief":"","defaultValue":"5","scope":"instance","type":"PropertyDoc","description":"

            space between interpolated points for quadratic and bezier curve approx. in pixels.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aBJ3VZ1ZMRgIB24KL8-Jc","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the points defining the current path

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w5yS58Zbb3CMqDHlGrbJ5","name":"arc","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds an arc to the current path which is centered at (x, y) position with the given radius,\nstarting at startAngle and end...","params":[{"identifier":"x","optional":false,"description":"

            the horizontal coordinate of the arc's center.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the vertical coordinate of the arc's center.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

            the arc's radius. Must be positive.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startAngle","optional":false,"description":"

            the angle at which the arc starts in radians, measured from the positive x-axis.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endAngle","optional":false,"description":"

            the angle at which the arc ends in radians, measured from the positive x-axis.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"anticlockwise","optional":true,"default":"false","description":"

            an optional boolean value. If true, draws the arc counter-clockwise between the start and end angles.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"6Oiu8QW99XsXv6c6wKrqs","name":"arcTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds a circular arc to the path with the given control points and radius, connected to the previous point by a straight li...","params":[{"identifier":"x1","optional":false,"description":"

            the x-axis coordinate of the first control point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

            the y-axis coordinate of the first control point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x2","optional":false,"description":"

            the x-axis coordinate of the second control point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y2","optional":false,"description":"

            the y-axis coordinate of the second control point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

            the arc's radius. Must be positive.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"tq4L17o63ekE2ugdhsbJF","name":"beginPath","brief":"

            begin a new path

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R9UbDmtw3WiVT9di1J7j2","name":"closePath","brief":"","scope":"instance","type":"MethodDoc","description":"

            causes the point of the pen to move back to the start of the current path.\nIt tries to draw a straight line from the curre...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C8W8xJqhmw9TsgKrZ8nnI","name":"ellipse","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds an elliptical arc to the path which is centered at (x, y) position with the radii radiusX and radiusY\nstarting at sta...","params":[{"identifier":"x","optional":false,"description":"

            the x-axis (horizontal) coordinate of the ellipse's center.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y-axis (vertical) coordinate of the ellipse's center.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusX","optional":false,"description":"

            the ellipse's major-axis radius. Must be non-negative.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusY","optional":false,"description":"

            the ellipse's minor-axis radius. Must be non-negative.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"rotation","optional":false,"description":"

            the rotation of the ellipse, expressed in radians.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startAngle","optional":false,"description":"

            the angle at which the ellipse starts, measured clockwise from the positive x-axis and expressed in radians.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endAngle","optional":false,"description":"

            the angle at which the ellipse ends, measured clockwise from the positive x-axis and expressed in radians.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"anticlockwise","optional":true,"default":"false","description":"

            an optional boolean value which, if true, draws the ellipse counterclockwise (anticlockwise).

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"7vGoH5SX08NQ4RHYrUNqB","name":"lineTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            connects the last point in the current path to the (x, y) coordinates with a straight line.

            ","params":[{"identifier":"x","optional":false,"description":"

            the x-axis coordinate of the line's end point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y-axis coordinate of the line's end point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4PnTejy2Z9pdKd_OIz9wj","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            moves the starting point of the current path to the (x, y) coordinates.

            ","params":[{"identifier":"x","optional":false,"description":"

            the x-axis (horizontal) coordinate of the point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y-axis (vertical) coordinate of the point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"E0PEZmb4_XcE_byBwsVZP","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

            creates a path for a rectangle at position (x, y) with a size that is determined by width and height.

            ","params":[{"identifier":"x","optional":false,"description":"

            the x-axis coordinate of the rectangle's starting point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y-axis coordinate of the rectangle's starting point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            the rectangle's width. Positive values are to the right, and negative to the left.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            the rectangle's height. Positive values are down, and negative are up.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FHVU3Sx-5Z8JMsjD7bo3p","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

            adds an rounded rectangle to the current path.

            ","params":[{"identifier":"x","optional":false,"description":"

            the x-axis coordinate of the rectangle's starting point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y-axis coordinate of the rectangle's starting point.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            the rectangle's width. Positive values are to the right, and negative to the left.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            the rectangle's height. Positive values are down, and negative are up.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

            the arc's radius to draw the borders. Must be positive.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jt4DhM2KSGKs-8TbQdAG1","name":"triangulatePath","brief":"","scope":"instance","type":"MethodDoc","description":"

            triangulate the shape defined by this path into an array of triangles

            ","params":[],"returns":[{"description":"

            an array of vertices representing the triangulated path or shape

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]}]},{"id":"yp3aS3BmH5Wf64PAwsE1G","name":"Point","brief":"","type":"ClassDoc","description":"

            represents a point in a 2d space

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"uHmOBgZy4Ir2zE7Kz4wmE","name":"type","brief":"","defaultValue":"\"Point\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QcXFrKCWKhN63XmjsFW7n","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            the position of the point on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7ZhN_rTUWMlUE5G5dYRd-","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            the position of the point on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PQydWjtEdH_iNKwpnb91O","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this Point

            ","params":[],"returns":[{"description":"

            new Point

            ","dataType":{"tokens":[{"value":"Point","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nM8EcrAl7p00NHmTbFk1U","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if this point is equal to the given point

            ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Point | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AtMtgxn5efzhT6JPjhnW9","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the Point x and y properties to the given values

            ","params":[{"identifier":"x","optional":false,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Point","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"yi-CRoLXo4kAMzfzaLIPv","name":"Pointer","brief":"","type":"ClassDoc","description":"

            a pointer object, representing a single finger on a touch enabled device.

            ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"vwBHKvR6zkTkQ1GoKDzLG","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UG5cDDHO7S-wLFBVsDqUs","name":"button","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button"],"type":"PropertyDoc","description":"

            the button property indicates which button was pressed on the mouse to trigger the event.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BfZHup3LkUbTTVxJoUCJD","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

            return the center position of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sRHk0vwlliwxxegRSNajA","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the x axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ujlhDRX9RVTuH0FI2FF7A","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the y axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wggtbk5zVMfndK6s0INj5","name":"clientX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientX"],"type":"PropertyDoc","description":"

            the horizontal coordinate within the application's client area at which the event occurred

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vsJ3kSY1GRB1eLZvJy5vk","name":"clientY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientY"],"type":"PropertyDoc","description":"

            the vertical coordinate within the application's client area at which the event occurred

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f54KztdqWyZOnOSMF0xOF","name":"deltaMode","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaMode"],"type":"PropertyDoc","description":"

            an unsigned long representing the unit of the delta values scroll amount

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q4f6pSSQeKtYzOzCMpWwy","name":"deltaX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaX"],"type":"PropertyDoc","description":"

            a double representing the horizontal scroll amount in the Wheel Event deltaMode unit.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3D2T4VPJeYhFmWuJxVsHC","name":"deltaY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaY"],"type":"PropertyDoc","description":"

            a double representing the vertical scroll amount in the Wheel Event deltaMode unit.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IFQ-_SDLXWxn8pt5E2Ohs","name":"deltaZ","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaZ"],"type":"PropertyDoc","description":"

            a double representing the scroll amount in the z-axis, in the Wheel Event deltaMode unit.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7q1bcXsQowcovul4Qhi8L","name":"event","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent","https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent","https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent"],"type":"PropertyDoc","description":"

            the originating Event Object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PmO6t5PM3n4peqxRII_hE","name":"gameLocalX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event X coordinate relative to the holding container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1wDOkOQ9djLLXmlO9LjzH","name":"gameLocalY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event Y coordinate relative to the holding container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N9UptN7oSYw8rr9nqxsGp","name":"gameScreenX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event X coordinate relative to the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uRvFjMHbHfVmxWzRix3_j","name":"gameScreenY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event Y coordinate relative to the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mKYe4OvhIM4S4hwAAKFKC","name":"gameWorldX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event X coordinate relative to the map

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lhb1YGDYjxwLsAJghV5Tx","name":"gameWorldY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event Y coordinate relative to the map

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WVGn0cwx43ikVQKV3rJbC","name":"gameX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event normalized X coordinate within the game canvas itself
            \n

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cqhMzfwb2nBrqlVozkLrg","name":"gameY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            Event normalized Y coordinate within the game canvas itself
            \n

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_xR5xUbbB9uQbt9sSNUF-","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sFNeSea9Phd5OkmnRJJOG","name":"isNormalized","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if not originally a pointer event

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SM6YsLMN5kddnSLvk7vJK","name":"isPrimary","brief":"","access":"public","defaultValue":"false","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/isPrimary"],"type":"PropertyDoc","description":"

            indicates whether or not the pointer device that created the event is the primary pointer.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ye99nVQ0ZyIKw6s5BXYQn","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qv-56TQUVBjq0pxo-r_2-","name":"LEFT","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            constant for left button

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hrpKjxjPiEBcRH2rg8x6-","name":"locked","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            true if the pointer is currently locked

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"14k5bjU46wQQ3NXsRAHwN","name":"MIDDLE","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

            constant for middle button

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wha9DvusF5O5sKQ6b4cRh","name":"movementX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementX"],"type":"PropertyDoc","description":"

            the difference in the X coordinate of the pointer since the previous move event

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r-nPlbYBnpyF_3Cjnr4nJ","name":"movementY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementY"],"type":"PropertyDoc","description":"

            the difference in the Y coordinate of the pointer since the previous move event

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZXsfDeEnggIrOKzVrPAXK","name":"pageX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageX"],"type":"PropertyDoc","description":"

            the horizontal coordinate at which the event occurred, relative to the left edge of the entire document.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"54w0ZivU-5MScRDlOCjJ2","name":"pageY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageY"],"type":"PropertyDoc","description":"

            the vertical coordinate at which the event occurred, relative to the left edge of the entire document.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dgg-hyGHGLsbVh5ihsaZr","name":"pointerId","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerId"],"type":"PropertyDoc","description":"

            The unique identifier of the contact for a touch, mouse or pen

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OHV4O7Pl-wairP7GB0T5q","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lrO92pot6LduE4Q0hndB5","name":"RIGHT","brief":"","access":"public","defaultValue":"2","scope":"instance","type":"PropertyDoc","description":"

            constant for right button

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hKg3uNlmQzDMqRBnLepsB","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R6uF0jOX8MFVLN5CRCUwc","name":"type","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/Event/type"],"type":"PropertyDoc","description":"

            a string containing the event's type.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4C1bFxiS6Cbc-lpzTqf3L","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LK8m-dvxrodYiHO_gKPFN","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

            x position of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mx72tw8HQg5z80V6tTpBt","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

            y position of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"47FXOIuaxkQhFEVcRno_Y","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given vertices to the bounds definition.

            ","params":[{"identifier":"vertices","optional":false,"description":"

            an array of Vector2d or Point

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

            either to reset the bounds before adding the new vertices

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Qc61JddeVbZ2W5SUQVTh0","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given bounds to the bounds definition.

            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

            either to reset the bounds before adding the new vertices

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"5X_FgB616p82NeU6_v_iR","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given quad coordinates to this bound definition, multiplied by the given matrix

            ","params":[{"identifier":"x0","optional":false,"description":"

            left X coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

            top Y coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

            right X coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

            bottom y coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

            an optional transform to apply to the given frame coordinates

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"we9EWqu6R90PdA2X3J2sY","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given point to the bounds definition.

            ","params":[{"identifier":"point","optional":false,"description":"

            the vector or point to be added to the bounds

            ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

            an optional transform to apply to the given point (if the given point is a Vector2d)

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"h8zx3cehmnAQveBcYOujX","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the bounds position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this bounds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this bounds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"P8zVeGusI5e9y2ALHDS5F","name":"clear","brief":"

            reset the bound

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"H5LMF6kLXvQfQctFXDWHf","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this bounds

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7znBbryNdzG57CDlBf7IF","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the bounds contains the given point.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to check

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the bounds contain the point, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"n4_0lJDezdmcX8DEV3elo","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this bounds are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TeVX99tyhpG4arvs1DskW","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the two bounds intersect.

            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            True if the bounds overlap, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_MsIcL1j8EGysWLcuy_v3","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

            sets the bounds to the given min and max value

            ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6C7DCMXSsXZmgcrVgl-Uh","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the bounds to the given x, y position.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"nGUrqIgqnLpEpX5Hs_XvQ","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this bounds.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this bounds.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GUvaSq5yANsIvwkxDe9zI","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Translates the bounds by the given point

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jWIQ6EjHRATr1_JrUncm5","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            Updates bounds using the given vertices

            ","params":[{"identifier":"vertices","optional":false,"description":"

            an array of Vector2d or Point

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"dpgIg4A5xXPrMibkJ3quI","name":"set","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            initialize the Pointer object using the given Event Object

            ","params":[{"identifier":"event","optional":false,"description":"

            the original Event object

            ","dataType":{"tokens":[{"value":"Event","kind":"canonical"},{"value":"Event","kind":"canonical"}],"template":"%1"}},{"identifier":"pageX","optional":true,"default":"0","description":"

            the horizontal coordinate at which the event occurred, relative to the left edge of the entire document

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pageY","optional":true,"default":"0","description":"

            the vertical coordinate at which the event occurred, relative to the left edge of the entire document

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clientX","optional":true,"default":"0","description":"

            the horizontal coordinate within the application's client area at which the event occurred

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clientY","optional":true,"default":"0","description":"

            the vertical coordinate within the application's client area at which the event occurred

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pointerId","optional":true,"default":"1","description":"

            the Pointer, Touch or Mouse event Id (1)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"fHFsQtKCYkaCwFirqPu-M","name":"Polygon","brief":"","type":"ClassDoc","description":"

            a polygon Object.
            \nPlease do note that melonJS implements a simple Axis-Aligned Boxes collision algorithm, which requir...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"w728sFhEyxXsOAtCcq5ek","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fZxBagjHVK5A_DwYSsVYI","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FnqWQCYXXi1yM7dKURy1L","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YMuUCrFQwRjfjcwIRnbhy","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this Polygon

            ","params":[],"returns":[{"description":"

            new Polygon

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"olhs9jmtLuwahIEPAtDQO","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

            origin point of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

            origin point of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

            array of vector defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[],"extends":[],"implements":[]},{"id":"wW_WC6m0ekRbx3imGdOXU","name":"contains","brief":"","examples":[{"caption":"","code":"if (polygon.contains(10, 10)) {\n // do something\n}\n// or\nif (polygon.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the polygon contains the given point.
            \n(Note: it is highly recommended to first do a hit test on the c...","params":[{"identifier":"x","description":"

            x coordinate or a vector point to check

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the polygon contain the point, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AXSUbXyZ-wlgnXec8WDVH","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"goD2W3c_g-8JmYEinmQqq","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"6RMvj1_EhnUAglvx6UtxZ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3DY-CjcM-NXT5watO9Jbb","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A0SBkbex_XAJHhcP7RxvR","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JxHcEOuOJPINruOifo2YJ","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given scalar.

            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xnCBnuXfg_oD9nB3rucL8","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SEWlB34RhAK-1KZf442GM","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the Polygon

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Polygon

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2> | %3<%4>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1J4JPXawlnmH7llakVo95","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QdgPfe_3oYVOS-MkYrG5m","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"tP_Gy4OLlgMCEPRfiZYL5","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cBhUsdEKjsjfIXiLZD7Px","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8CsRDdYQp4__lvQR98NNM","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the given transformation matrix to this Polygon

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q5ZtGArOpQaHdnjkxpa_d","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VVI85ZLN71gXChtB7Q_uS","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"kKInhAKoFWJ4nEmMhyZxX","name":"PrimitiveCompositor","type":"ClassDoc","description":"

            A WebGL Compositor object. This class handles all of the WebGL state
            \nPushes texture regions or shape geometry into Web...","params":[],"returns":[],"extends":["Compositor"],"implements":[],"members":[{"id":"ssmVS_sUv_CKq4EGFKq5f","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7SkWv9tKU4l7dagyEu9Jh","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the shader currently used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WX0ThGJ_c4QEWq10b5w9O","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iJyFaHXqB_Tn_OZ8YtN_y","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

            primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3R7P1ox8BqDTEh7eGK8Qv","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bu2NBS90Zkr5_Z5Xf_Yme","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S1QMQ7b451pVduEYGNHA0","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_SsNbdBu6w8JTBSKISjCT","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

            add vertex attribute property definition to the compositor

            ","params":[{"identifier":"name","optional":false,"description":"

            name of the attribute in the vertex shader

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

            number of components per vertex attribute. Must be 1, 2, 3, or 4.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

            data type of each component in the array

            ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

            whether integer data values should be normalized into a certain range when being cast to a float

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

            offset in bytes of the first component in the vertex attribute array

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"520ZoQ4MeaZTKiVJSA8JU","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5WeU-1uoRf6820cL-rwCz","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"WJQCCVppOCv0jMpDKm54n","name":"drawVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            Draw an array of vertices

            ","params":[{"identifier":"mode","optional":false,"description":"

            primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"verts","optional":false,"description":"

            an array of vertices

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2>"}},{"identifier":"vertexCount","optional":true,"default":"verts.length","description":"

            amount of points defined in the points array

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rythRqwKt4jl-sFm3MEH8","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

            Flush batched vertex data to the GPU

            ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

            the GL drawing mode

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2JfJ4BHumKJuU-8P0VN3N","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

            set/change the current projection matrix

            ","params":[{"identifier":"matrix","optional":false,"description":"

            the new projection matrix

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"n5AZO_CCO096yU773AQ-F","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

            Select the shader to use for compositing

            ","params":[{"identifier":"shader","optional":false,"description":"

            a reference to a GLShader instance

            ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"7OXNCwRK0-ctqudL40TIv","name":"QuadCompositor","type":"ClassDoc","description":"

            A WebGL Compositor object. This class handles all of the WebGL state
            \nPushes texture regions or shape geometry into Web...","params":[],"returns":[],"extends":["Compositor"],"implements":[],"members":[{"id":"l__kMa9FexqGXB4-fQSOy","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            an array of vertex attribute properties

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YsSNqgWMFqF8vGiknnVHx","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the shader currently used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1fANJZIhu6_ulOPucK4oK","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the default shader created by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VIVJMv_io7xrWSDD_1yyU","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

            primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aFf4His6ng62RJlDHrwpg","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-IWOc-cKv3GLfzlHH_Is3","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            the vertex data buffer used by this compositor

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0mgNX5cDHZOvdWw-dfmQq","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

            the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"68u53Xk0VSPXcMzoi6Nb7","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

            add vertex attribute property definition to the compositor

            ","params":[{"identifier":"name","optional":false,"description":"

            name of the attribute in the vertex shader

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

            number of components per vertex attribute. Must be 1, 2, 3, or 4.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

            data type of each component in the array

            ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

            whether integer data values should be normalized into a certain range when being cast to a float

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

            offset in bytes of the first component in the vertex attribute array

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"UBaOhNJlir0VATnY-cw4f","name":"addQuad","brief":"","scope":"instance","type":"MethodDoc","description":"

            Add a textured quad

            ","params":[{"identifier":"texture","optional":false,"description":"

            Source texture atlas

            ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

            Destination x-coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            Destination y-coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            Destination width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            Destination height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"u0","optional":false,"description":"

            Texture UV (u0) value.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v0","optional":false,"description":"

            Texture UV (v0) value.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"u1","optional":false,"description":"

            Texture UV (u1) value.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v1","optional":false,"description":"

            Texture UV (v1) value.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tint","optional":false,"description":"

            tint color to be applied to the texture in UINT32 (argb) format

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Z8WqqrBkmRhDGh3qS-Bnu","name":"bind","brief":"

            called by the WebGL renderer when a compositor become the current one

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f7hCdofuRgriImTqcjF7j","name":"bindTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

            assign the given WebGL texture to the current batch

            ","params":[{"identifier":"texture","optional":false,"description":"

            a WebGL texture

            ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}},{"identifier":"unit","optional":false,"description":"

            Texture unit to which the given texture is bound

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"K9y79HCWoZTvg7famRqws","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"cjhD9ihtiHMnci5-KCvxm","name":"createTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

            Create a WebGL texture from an image

            ","params":[{"identifier":"unit","optional":false,"description":"

            Destination texture unit

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pixels","optional":true,"default":"null","description":"

            Source image

            ","dataType":{"tokens":[{"value":"Image | HTMLCanvasElement | ImageData | Array | Array","kind":"canonical"},{"value":"Image","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageData","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Uint8Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1 | %2 | %3 | %4<%5> | %6<%7>"}},{"identifier":"filter","optional":false,"description":"

            gl.LINEAR or gl.NEAREST

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"repeat","optional":true,"default":"\"no-repeat\"","description":"

            Image repeat behavior (see {@link ImageLayer#repeat})

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"w","optional":true,"default":"pixels.width","description":"

            Source image width (Only use with UInt8Array[] or Float32Array[] source image)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":true,"default":"pixels.height","description":"

            Source image height (Only use with UInt8Array[] or Float32Array[] source image)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"premultipliedAlpha","optional":true,"default":"true","description":"

            Multiplies the alpha channel into the other color channels

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"mipmap","optional":true,"default":"true","description":"

            Whether mipmap levels should be generated for this texture

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            a WebGL texture

            ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x0Mbfspl8glavzbP_QxoJ","name":"deleteTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

            delete the given WebGL texture

            ","params":[{"identifier":"texture","optional":true,"description":"

            a WebGL texture to delete

            ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"A7m-8X6t4Am-nsUOamlvt","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

            Flush batched vertex data to the GPU

            ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

            the GL drawing mode

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DPh39225YVhG81_zfPmgg","name":"getTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the WebGL texture associated to the given texture unit

            ","params":[{"identifier":"unit","optional":false,"description":"

            Texture unit to which a texture is bound

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            texture a WebGL texture

            ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"exbGS7mBgdo63iOAt0gsP","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

            set/change the current projection matrix

            ","params":[{"identifier":"matrix","optional":false,"description":"

            the new projection matrix

            ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"d2X-pItKyL3JCz34d6OXV","name":"unbindTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

            unbind the given WebGL texture, forcing it to be reuploaded

            ","params":[{"identifier":"texture","optional":true,"description":"

            a WebGL texture

            ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}},{"identifier":"unit","optional":true,"description":"

            a WebGL texture

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            unit the unit number that was associated with the given texture

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h2SLlPLiyE62N7QtVBerZ","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

            Select the shader to use for compositing

            ","params":[{"identifier":"shader","optional":false,"description":"

            a reference to a GLShader instance

            ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"M32awac2EQJ-RNVU4mARX","name":"QuadTree","brief":"","see":["game.world.broadphase"],"type":"ClassDoc","description":"

            a QuadTree implementation in JavaScript, a 2d spatial subdivision algorithm.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"1cFDFNyXgqnty_-B9acoe","name":"clear","brief":"","scope":"instance","type":"MethodDoc","description":"

            clear the quadtree

            ","params":[{"identifier":"bounds","optional":true,"default":"this.bounds","description":"

            the bounds to be cleared

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"hrVBd7et4c3ydsaog07es","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"world","optional":false,"description":"

            the physic world this QuadTree belongs to

            ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}},{"identifier":"bounds","optional":false,"description":"

            bounds of the node

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"max_objects","optional":true,"default":"4","description":"

            max objects a node can hold before splitting into 4 subnodes

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max_levels","optional":true,"default":"4","description":"

            total max levels inside root Quadtree

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"level","optional":true,"default":"0","description":"

            deepth level, required for subnodes

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BO_Mo_wrfXZZDkUKh0Ojh","name":"hasChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the node has any children

            ","params":[],"returns":[{"description":"

            true if the node has any children

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XW_ZaPOvPM6CmGsLlglID","name":"insert","brief":"","scope":"instance","type":"MethodDoc","description":"

            Insert the given object into the node. If the node\nexceeds the capacity, it will split and add all\nobjects to their corres...","params":[{"identifier":"item","optional":false,"description":"

            object to be added

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"VnMkPm5ahksYfFuG5IaM3","name":"insertContainer","brief":"","scope":"instance","type":"MethodDoc","description":"

            Insert the given object container into the node.

            ","params":[{"identifier":"container","optional":false,"description":"

            group of objects to be added

            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wd0Pu-J8HtuVYJVnhnDMx","name":"isPrunable","brief":"","scope":"instance","type":"MethodDoc","description":"

            return true if the node is prunable

            ","params":[],"returns":[{"description":"

            true if the node is prunable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"d8pYkh_DeWoHrVKHhk4Hm","name":"remove","brief":"","scope":"instance","type":"MethodDoc","description":"

            Remove the given item from the quadtree.\n(this function won't recalculate the impacted node)

            ","params":[{"identifier":"item","optional":false,"description":"

            object to be removed

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            true if the item was found and removed.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TcYoflZxhciYMWEz8knzV","name":"retrieve","brief":"","scope":"instance","type":"MethodDoc","description":"

            Return all objects that could collide with the given object

            ","params":[{"identifier":"item","optional":false,"description":"

            object to be checked against

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"fn","optional":true,"description":"

            a sorting function for the returned array

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            array with all detected objects

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"FHMnvSdbrEotTrzpIAKC8","name":"Rect","brief":"","type":"ClassDoc","description":"

            a rectangle Object

            ","params":[],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"s_jWRWW87bKAU9gYs1K3d","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5tB4IC0RpXDjfjzxUAiMl","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LG85FSbzlu_j7rE3ks3mA","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z2pNtTCw1sUdy7alpHkrl","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kxn_LmERSt-fFQz6AAOm6","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b1bjKsPUDf2P38bQmW9Ku","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"an7rYXXWN2G8Ea8r9OkSt","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NIoP-voibeI7qDb4cuUM5","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1wdQwtQkt_X7vVeUVJJDg","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5FkT1k4y5TS28a8Czx-mb","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vzkPoJEtGKPTCkFo8_NfA","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JGE2lv3ey1nJ-kTmZz3Sm","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"G3EMpJBAlBVh7aAzfE7KG","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7a9lvs8jC-KOPc0Iv4Nhi","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bXceoEJTcG74SK_NLkObx","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"myYBDQeAANMmdyiWYjjni","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8nt0ERAEjw2Fh2jWQ8En4","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"uIX2LQINabm1zJHAMjMyZ","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iFyeEWx8c9D7QW_k9-d8L","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"I99DsZMNp-uf-XgOyNI5P","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OtQI0JIv7cRMtva2eBe4K","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"y2jARc3RsfLZlP7CNyrIf","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Vz-CwxeuAa4Ewjb7fCIgK","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_zkPo1MyBUS9AL5TyOUpb","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oH_2I8fSi3PhUEOPUQiVO","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"anGSHPR7idQd2hCYhySqH","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the rectangle

            ","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RWVbjw5VW71dnVAMVMT7G","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6r-7mMawFHQiJgPL6NxPR","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Am-Ccfid8eg5RFUD4MGBP","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"45tuFz8WZ8-xAkH0k8hQd","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7dnjI2-A6n07WyrmVuxe8","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1BzUmWdu2Xtt_efIwjqzn","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"25l1bsGwRg3-CzXy5S_Tj","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g3D8eXLQdBEa-fnkLt7dr","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the given transformation matrix to this Polygon

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IdbfufhDybnHBUFPIMNSd","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9fn0w_JnvtrpiZe7t82md","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wsMQG_DB6eRGpEO-TBcrO","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"yzORe89tZsBJmNYXgLVZo","name":"Renderable","brief":"","type":"ClassDoc","description":"

            A base class for renderable objects.

            ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"w5YRa84SFNBzqIkLq5orN","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w42I0PZ_JjxncBDiMREW9","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yujlkWfyINvroXQ_XLqM7","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kqlDhVvdwEPC_Ejlh6PpD","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ltwiy9Fz7fCkejpjOf_OH","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SqAsCttyybE6noAcoS-o9","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IyGE880z9i6Y0o9RraCxW","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0T-w6EZNOzQf_CcAgP4vw","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xubLqyVU97wcGgwPrRQBk","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yxcN_D2k7GRhfjdEQ28mn","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ehm9OMh4NQodqnzE5xZ3D","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2E8xqRxktfiygAp_ICLkv","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zW7w9o6VkWs1uXdW6zEZt","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3PqTZ-Nd4a5Dxl8vf_l27","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gyMOBa7LMuSzf-TBzCqf8","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VRqw4tlPae4dYtisKAGam","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7ChKasdYOGDZTPUd2a5rW","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nwRx2MYcp2asKS-RlgQAV","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kBbDWhIwdfEFB1U2LUJ78","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kv2mIRpPdyLQyxs-LuI8Z","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GrtTrp_jsSKUeyO1M2B0S","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"etsxDgOII50koxxhGDxvy","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FA-DHN1aadLDGRxBe-mx3","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d7Ut1KEFHfAjEcY964b45","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P_0SLQjqAk1iWlCB438lO","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ixb6ziJBL4NjUbIC1YHHZ","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4e6gVkY1U5S_zK1w1Imdl","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"76zl4cMzda_QgT2fHcQ5H","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wik9i7BEKLbGODcZbHt4W","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MSS3QDZ4ejquOT_jqBE0V","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jKyBEt1ceSIjgGjJ-991A","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9G6BPZMliBJ0LawIF4uk8","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3FUgtZIb-aSpUpJwWIQYC","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rS4aWqv-5YLBaX_lnSQ2S","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wbP1N3VGyw5RBD9I35EwE","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1Oppx0S7APo59Xh4MKhnF","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9Rw_hDdcGv_siWUHsgQNr","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o9dfovvut8TxsUTkt4g9k","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ofuKXTtkJ9LgP8AYv-ZY8","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            position of the renderable object (accessible through inherited pos.x property)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the renderable object (accessible through inherited pos.y property)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            object width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            object height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YTfI8CZiGEPL62QsL3ySz","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hUfCNFPZA44Vu0qNJUiRv","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eppJHmOai1n2eF-pq-q06","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nGlP4ItImZYg78bLQFCdq","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uHPWLJbFC7q8gC2bI6UWf","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6laDg6FPAnzX8o2NuQxHo","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tILrV1RGi6SMBdK0XZ8Mr","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k5kzBLH-LdIzpHzMXoCvm","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-da3dQCIJJ6wp70l8h7jE","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UvgEhgc7wk_XoyrCnqOP4","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"o0oxxT7RG0dmsTwvGcTXo","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mw-zq7207EzgFNbYpyPD5","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3WHauXtuTizPYE1qgvGIe","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tnZlTODnOQnipxSKLJJ3u","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WrYXttG2uUOfArJ-B9fCY","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"91zV948tfyMviVaOc3dyi","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eTZw8yWOVt1J3sQjpuCuZ","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"INZYDKOx-vC8Kek7pb5Os","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"QB272-tvYTJXBLEzt-n6W","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"1cC3hz_SYewmUAIClldEW","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PDhw8El1hTaMckRQNLdAJ","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4rQrGxu0425I5ornaH0U7","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RUeVK4s0cAAt-HQrhM9y2","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XhZXiGWZ8KPNnQEzT5Efl","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6HUw7EVvYwi303cnG1fwq","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MiaxN4hDJ3m3JheOL-skQ","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GgYBnW3VhK23apOpB3X1R","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FA6d5CGH5m6MnvTWajlwD","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"At-r1BlNfFvFkxlJboOIM","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KlecusasBhmX3Z2uhCP-N","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TQ5BKpC-BzvlaxK7gvhkd","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gl6osoAbclCHn2LQaAXRN","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tP2q5cJD630dU9nijEND4","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V1axwN1neS1j7qoNDwyAk","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oxGc0bSi1i02-Hg9cWJXJ","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LnPHUTPAyFCc6F7UC2tQK","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KB4TNl2DrevOohPgePZ0C","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"if9CPhiSwmhh3-DJbS6H7","name":"Renderer","brief":"","type":"ClassDoc","description":"

            a base renderer object

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"jjo-hLccNDg4MJ1JrquWh","name":"getHeight","brief":"","access":"public","deprecated":"since 15.12.0","see":["height"],"type":"ClassDoc","description":"

            return the height of the system Canvas

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"TM0NHhmMro7Q7CqJLq7Ey","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"2qM2TIiHJ4g1JMTXq8R20","name":"getWidth","brief":"","access":"public","deprecated":"since 15.12.0","see":["width"],"type":"ClassDoc","description":"

            return the width of the system Canvas

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"kcWthWQKH6HhTV3it43Ei","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"8oGvPqHeR2chOQBKZpzUV","name":"Texture","brief":"","access":"public","deprecated":"since 10.4.0","see":["TextureAtlas"],"type":"ClassDoc","description":"

            Alias of {@link TextureAtlas}

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Tdb7cpB8C4JxFo9754n9U","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"SV5cwTpYpTGLqyZHAy4fy","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

            the default method to sort object ("sorting", "z-buffer")

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qC9ALdKcwbm6PGQd138rM","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            the requested video size ratio

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iMz2pVIerGh3x76JQsAIZ","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            return the height of the canvas which this renderer draws to

            ","params":[],"returns":[{"description":"

            height of the system Canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q3VYpdOvMbOnklnKnIr9p","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            true if the current rendering context is valid

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Nbvq5xqTUGHyiAPVGr8HP","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

            The Path2D instance used by the renderer to draw primitives

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rOuMWgYaoR9uGrBekcUgV","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

            the scaling ratio to be applied to the main canvas

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1dD0GyZpI6kkCikkI0Nxq","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The given constructor options

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TOR253mYE-OyM7hFGst1c","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

            The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s5O9sVfVKUNernYJEWvvN","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            return the width of the canvas which this renderer draws to

            ","params":[],"returns":[{"description":"

            width of the system Canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"a5cye5xdu9IzGAa2Rtv-b","name":"clear","brief":"

            prepare the framebuffer for drawing a new frame

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ycYWHgGNUTSNUvjmgioMZ","name":"clearMask","brief":"","scope":"instance","see":["Renderer#setMask"],"type":"MethodDoc","description":"

            disable (remove) the rendering mask set through setMask.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8LY13XSweYnxgxYt1gAZY","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

            clear the rendering tint set through setTint.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OSRPjlcdazcDZcqRaPdpV","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

            optional parameters for the renderer

            ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HSaQ4hCM5ty9HcJFhzdyq","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

            fill the given shape

            ","params":[{"identifier":"shape","optional":false,"description":"

            a shape object to fill

            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"gpddZIMPM1qzEo59_3JsP","name":"flush","brief":"

            render the main framebuffer on screen

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_yhKOPrv7wCzczhTRDwxM","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the current blend mode for this renderer

            ","params":[],"returns":[{"description":"

            blend mode

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"l4PzJVoxyHS_VADKoYFUT","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a reference to the canvas which this renderer draws to

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E9IhlkQKIj0bw67BvV7y1","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the current fill & stroke style color.

            ","params":[],"returns":[{"description":"

            current global color

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EgrfIFtR9-FHqfWSBOQzC","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

            return a reference to this renderer canvas corresponding Context

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D | WebGLRenderingContext","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"8rQyYfRHfpy3U_-AzF6Zx","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the 2D Context object of the given Canvas
            \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

            use false to disable transparency

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_Yz83bnnpKoRFakqJ14d6","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

            return a reference to the screen canvas

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zEJOyrKEqXRTZzosMOssz","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

            return a reference to the screen canvas corresponding 2d Context
            \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vL2abHjcdsmELGqsfPcGW","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current global alpha

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1l2ZGit-GN2orvDgetDkw","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if the given rect or bounds overlaps with the renderer screen coordinates

            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8GxZL3nbFuKhUj8jV0QM8","name":"reset","brief":"

            Reset context state

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"97kfLccrXnAjBxXnup8z5","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resizes the system canvas

            ","params":[{"identifier":"width","optional":false,"description":"

            new width of the canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            new height of the canvas

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9nCh52HBcWw5CqeCYs1TU","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

            enable/disable image smoothing (scaling interpolation) for the given context

            ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"m_ITIyVGGHUbSHhdxCTkN","name":"setMask","brief":"","scope":"instance","type":"MethodDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[{"identifier":"mask","optional":true,"description":"

            the shape defining the mask to be applied

            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

            either the given shape should define what is visible (default) or the opposite

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"q7SND0kPbcHlx6TyuSx5v","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

            set/change the current projection matrix (WebGL only)

            ","params":[{"identifier":"matrix","optional":false,"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"oKTy5HH-RKMlb_G3QT-1-","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

            set a coloring tint for sprite based renderables

            ","params":[{"identifier":"tint","optional":false,"description":"

            the tint color

            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

            an alpha value to be applied to the tint

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NJsjM2vDG3GvI0Amou-cj","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

            stroke the given shape

            ","params":[{"identifier":"shape","optional":false,"description":"

            a shape object to stroke

            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

            fill the shape with the current color if true

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"uDJiRLxflSTCuoqf7Yu7S","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

            tint the given image or canvas using the given color

            ","params":[{"identifier":"src","optional":false,"description":"

            the source image to be tinted

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

            the color that will be used to tint the image

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

            the composition mode used to tint the image

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            a new canvas element representing the tinted image

            ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"zFJfQaCZPW7pD8EEXgjCC","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

            creates a Blob object representing the last rendered frame

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a Blob object representing the last rendered frame

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9cgoVIQfiqivhY-yDuuKC","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

            returns a data URL containing a representation of the last frame rendered

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning a string containing the requested data URL.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WR-dU_OD-DUoZRjFvbofb","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

            creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

            ","params":[{"identifier":"options","optional":true,"description":"

            An object with the following properties:

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

            A string indicating the image format

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

            A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            A Promise returning an ImageBitmap.

            ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"MhIDecHGhxt6Y-tIHK3l9","name":"ResponseObject","brief":"","access":"public","type":"ClassDoc","description":"

            An object representing the result of an intersection.

            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"TcLUVqVGlfHo0uFfiyIFi","name":"a","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The first object participating in the intersection

            "},{"id":"lcdtpQAYz6qk2pEGQBgYj","name":"aInB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Whether the first object is entirely inside the second

            "},{"id":"qYMZtQd1ai4ETsKE8m_Me","name":"b","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The second object participating in the intersection

            "},{"id":"xEZiY6Wf5moGEIlft1WWq","name":"bInA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Whether the second object is entirely inside the first

            "},{"id":"nVh3NBwpsEqtii6yWv9iB","name":"indexShapeA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The index of the colliding shape for the object a body

            "},{"id":"kEik6Kw9jKqW1i4dgdm7X","name":"indexShapeB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The index of the colliding shape for the object b body

            "},{"id":"Jd3MYM4E5IKDuvC0xau5J","name":"overlap","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Magnitude of the overlap on the shortest colliding axis

            "},{"id":"EOoSXfz4Z6aRpgab2Mmdr","name":"overlapN","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The shortest colliding axis (unit-vector)

            "},{"id":"FGOeHSyrvMezd1iJOvw6k","name":"overlapV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The overlap vector (i.e. overlapN.scale(overlap, overlap)). If this vector is subtracted from the position of..."},{"id":"32Y3MM90nmv5sjPfEL7eE","name":"clear","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

            Set some values of the response back to their defaults.
            \nCall this between tests if you are going to reuse a single this object for chaining

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]}]},{"id":"QlgIZ3zQJdk4pPWd9MPEO","name":"RoundRect","brief":"","type":"ClassDoc","description":"

            a rectangle object with rounded corners

            ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"F4I8gQXKTaJ6EqswJo8Ht","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w4WzyvNFtJcdiMMU-p44t","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"stTMywUV0FVmbMa8Digmi","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-XCxSbPu202IfzXfxP8Aw","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9pNz9n_7Um37bNzNFK3lW","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qJpD_IZzc3irnpLMuyh-D","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t-ZPnXwowA4PPynh4vcu6","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

            origin point of the Polygon

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9XM3JxRiDp4ljUZ3pk9-g","name":"radius","brief":"","defaultValue":"20","scope":"instance","type":"PropertyDoc","description":"

            the radius of the rounded corner

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CeIsd5jeSk7tLIG3943vG","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TFQOIyancdnx6cNWPutk-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mU954I76wYRkq7zhJydAG","name":"type","brief":"","defaultValue":"\"RoundRect\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zcAGoEKZFH0lTJChwB8PL","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wqmV1kCpzuOlASxT6hA2J","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0KwZxINeviaOFe6b-Jtnk","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this RoundRect

            ","params":[],"returns":[{"description":"

            new RoundRect

            ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X4r5iuQyL40gBJKaMOsOd","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            position of the rounded rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the rounded rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

            the rectangle width

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

            the rectangle height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":true,"default":"20","description":"

            the radius of the rounded corner

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6g5eo9nsp9MBfp9g91TIp","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rounded rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a Rect to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rounded rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"S0AmpuUTwKpJtLcFpZsqP","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position, size and radius of the given rounded rectangle into this one

            ","params":[{"identifier":"rrect","optional":false,"description":"

            source rounded rectangle

            ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vPUZLZSJRG19FQEDIGYJv","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this RoundRect is identical to the specified one

            ","params":[{"identifier":"rrect","optional":false,"dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iurzi654eTr6d72o9YrUb","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CnR3J7_BGTUJJk35rmJ2s","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ZShUbQ0s3cX6bIJBxShyA","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fCe1jNDlbBMQGyWEPkZpT","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"abxXuYEbHJc4DjCm0pJZQ","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MmE1qURzQ5jf_NWtFbicq","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2oadc3DyWOJur7Dvhkk1N","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TqoHCgiqzKeH1inx5AW41","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wL35iQQqV2_q6hWWhHVYY","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the rectangle

            ","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lP4dzlcCE6Hi-QEpmJCl0","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            Scale this Polygon by the given vector

            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZskrUkFgh5PrUzwkSHlvz","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sDUTt6RRZ8fcntYJ62NMy","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"T_thTiMlo2gxvvnhrB-kR","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"x8jm3MQKK-QTReMhGH_an","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3PbJQtRlCJDX-xlv7oqOm","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MftbiGoSy3osb4JNhpRGE","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fwclstny1r1Wgt34-Ehps","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply the given transformation matrix to this Polygon

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9FuJK8xxR1pV5L33RYMgQ","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NsAy82bK7EzgCXf1U93L7","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2UVdM4jMbXayqmY_5JITd","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"H6Jx73dI1YDN51DPFsMwa","name":"Sprite","brief":"","type":"ClassDoc","description":"

            An object to display a fixed or animated sprite on screen.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"PwAUZv-xcNWBocUIcQsgk","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"joJh-QYJssFWAN2RYXINS","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yt40YQUwCqE7eVoA7ps5-","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zQCbuO__xkGO6AplT8NwV","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E6yE3fVkLZCMm-8wQZ8Mr","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            pause and resume animation

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y0kspfUnDZksFriyT6cWq","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

            animation cycling speed (delay between frame in ms)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fZ5VdAHBqHnIKviFRiNBJ","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"moXsPUsBc5nQyV8C7vNy8","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qMi-pivp0P7XX4KQsGKgM","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aaHAZ5cQ90ucmWobzdB2H","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DFGHV37xRgzN--EziQAle","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V6osf285EqsDjijrIAqFl","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9aSWs4tHK_QY7lYOu1YdY","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8_pqKAXGPXuecgHOaTQMG","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NGZmjSfYc4T5Auh0qXHUA","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"THPSPPWNT-E-I9x-i1iJ2","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cc5SgmDgamt4hBrUiZnN7","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DOG7Raro8IitBxUmzNADk","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iQSKbWcng6c9jPWAJAmsm","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EYVzHq4OMxEiPq9TVYQJp","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"owjmdaU7bOlCMY87r57n4","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"INa7N9BOr9OA5znKJbHFR","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lt2xBGRnTqMCv7Tu3bNAn","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ywxo1EL6nRDmEP_WWTv14","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g2BXuVPVwj4U2HqzRC8hd","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_SQG-tdPDjlLtLDQQY9te","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zi_7MN3Z5DC8eZETazrEC","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KlMLlojAqDIW1Tz1pRUo_","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

            global offset for the position to draw from on the source image.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zic-tbUTRnfNQ1QNlxsO2","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9q1OuSvEShD2OaO7jL7w3","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uOdy4iHkF3GEYyYcT13oU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"im-WWb-fVb0o4_ltfbXdQ","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zs1g4LDFebM9lfZgwriwI","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"itf3Bhtrm-AnvJyGqOmN5","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            The source texture object this sprite object is using

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nAn1jLD1LZfuAm0AEEZM4","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aE6fwftMjxoBSSHIjioD3","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DOgpi-3OtO7_EeRwv3AUP","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XENC3UXgBDfNN4fTpPitZ","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ytB9UXWKRNyOxJbbs1AkL","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2Ve-GB6i5BjHCEsAvbi-E","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            add an animation
            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

            cycling speed for animation in ms

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            frame amount of frame added to the animation (delay between each frame).

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZiGEY2Emk6-p_DRfobzHt","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"merXINB7rRwBz81BsztRp","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"10zNIeZ2q31iOvwSRmrYj","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u4lb5yLR5KXYT7VXLG83a","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a single sprite from a standalone image, with anchor in the center\n let sprite = new me.Sprite(0, 0, {\n image : \"PlayerTexture\",\n framewidth : 64,\n frameheight : 64,\n anchorPoint : new me.Vector2d(0.5, 0.5)\n });\n\n // create a single sprite from a packed texture\n mytexture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n );\n let sprite = new me.Sprite(0, 0, {\n image : mytexture,\n region : \"npc2.png\",\n });"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            the x coordinates of the sprite object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinates of the sprite object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            Configuration parameters for the Sprite object

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.image","description":"

            reference to spritesheet image, a texture atlas or to a texture atlas

            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | string"}},{"identifier":"settings.name","optional":true,"default":"\"\"","description":"

            name of this object

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.region","optional":true,"description":"

            region name of a specific region to use when using a texture atlas, see {@link TextureAtlas}

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.framewidth","optional":true,"description":"

            Width of a single frame within the spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"description":"

            Height of a single frame within the spritesheet

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.tint","optional":true,"description":"

            a tint to be applied to this sprite

            ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.flipX","optional":true,"description":"

            flip the sprite on the horizontal axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.flipY","optional":true,"description":"

            flip the sprite on the vertical axis

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.5, y:0.5}","description":"

            Anchor point to draw the frame at (defaults to the center of the frame).

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bLAipKxEuWPTPfhwjNQZM","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"b2NurwxusPYqFvCjt4NQ4","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"csMfMfLmClWRZZOX21Oha","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oqaYrAKJWyf9E1lB4BlZZ","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rrMtA1BsRiExeMLen6N9z","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

            make the object flicker

            ","params":[{"identifier":"duration","optional":false,"description":"

            expressed in milliseconds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

            Function to call when flickering ends

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JztlKXHX129xvylqADcS3","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XXqFBbseGljw3iE1Wo72E","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zq7CDep9UNbSbDPNrYK-p","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CTdfU6gY8RQgnjPfeBBAI","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gV5vVL_faArt1ZgJeJwCS","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the current animation frame index.

            ","params":[],"returns":[{"description":"

            current animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OTXrlgaQYO1Q1M_85TF3V","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"v_MljVbHtM-PesDqGOmua","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ry6wtd2tZlrU-J8Pet9Fw","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"V_uBE3k25Gx-MGDZtLrnl","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

            return true if the specified animation is the current one.

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qnoBD_1iGo419EG-oPX5k","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iDbe_edTtN6DIfdRfXiLv","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the flickering state of the object

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"YS2rWyxtMYhapUqDAVtSM","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EpIUhUihn_ToB1vIGnJxZ","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"bPiiYxCItkuA7YpiQy3di","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qd2jn8EGcV6zBVjzQBPQT","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vXNXrM62j6G2A-3mc_R_y","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"9QIRRfKoI-IQQeG1UV-Of","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"f2hWYvjfYZUbpgdYeNQXz","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jmo9SiLXT3XPEs8ZCg8qY","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PVPgjpjiWQGDLVxumOPYz","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

            reverse the given or current animation if none is specified

            ","params":[{"identifier":"name","optional":true,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bFeV_m-amHD3haFGmFKRH","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OlCzJaaGEyKVoRmtZlVkq","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d6ykmly_lTHKN4Qs0li6X","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8p7z0tWTgrcZg9mitkINz","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

            force the current animation frame index.

            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

            animation frame index

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XBWsXN0ZAzZAltbWhW_Fs","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

            set the current animation\nthis will always change the animation & set the frame to zero

            ","params":[{"identifier":"name","optional":false,"description":"

            animation id

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

            animation id to switch to when complete, or callback

            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

            if false will reset the elapsed time counter since last frame

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tBhcu38H__wAzxx5qMyKB","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ztupLtqT2zelmC8EwS-0g","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

            change the current texture atlas region for this sprite

            ","params":[{"identifier":"region","optional":false,"description":"

            typically returned through me.Texture.getRegion()

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8CIggfeLCte7CxHXNMSgU","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZiJ_wjozJ4EBnVewHgjDB","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Qjn7g9v0_VbkdaqRfaQ6X","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cyG49lXqYsIl-K25BvQEn","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lvr19HQpdbIjiQ1KD_qFg","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kxhGCDATklcmHesUBNQ-e","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9HurvNv38wPYRiM63T821","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V69i5Pyl3bZzTKhwXjvUc","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nlggZnsG0Bup9TlgFEg55","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LMiT2MGfqN0AgQDe9HTlM","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_KadQ6mRv8VpGdJ_KZX-_","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            draw this srite (automatically called by melonJS)

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

            the viewport to (re)draw

            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5fRUE-P6HcK8_qkpBNj0K","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

            update function.
            \nautomatically called by the game manager {@link game}

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the Sprite is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"UPE9MWDriUThhlKlSGvyQ","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"QahOxPmYGQDRcYXEocaBU","name":"Stage","brief":"","see":["state"],"type":"ClassDoc","description":"

            a default "Stage" object.\nevery "stage" object (title screen, credits, ingame, etc...) to be managed\nt...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"1zZqR0m-Mjjc6wrEfQxhH","name":"ambientLight","brief":"","access":"public","defaultValue":"\"#000000\"","scope":"instance","see":["Light2d"],"type":"PropertyDoc","description":"

            an ambient light that will be added to the stage rendering

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LJN7OwUV5NhyMHAKSMNFF","name":"cameras","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The list of active cameras in this stage.\nCameras will be renderered based on this order defined in this list.\nOnly the &q...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VaxHNOYi-fxcRJFvmYaA7","name":"lights","brief":"","access":"public","examples":[{"caption":"","code":"// create a white spot light\nlet whiteLight = new me.Light2d(0, 0, 140, \"#fff\", 0.7);\n// and add the light to this current stage\nthis.lights.set(\"whiteLight\", whiteLight);\n// set a dark ambient light\nthis.ambientLight.parseCSS(\"#1117\");\n// make the light follow the mouse\nme.input.registerPointerEvent(\"pointermove\", me.game.viewport, (event) => {\n whiteLight.centerOn(event.gameX, event.gameY);\n});"}],"scope":"instance","see":["Light2d","Stage.ambientLight"],"type":"PropertyDoc","description":"

            The list of active lights in this stage.\n(Note: Canvas Renderering mode will only properly support one light per stage)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4XRR7God2Hs7U-GEfzgEE","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            The given constructor options

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DOk_J_B3IYWEOdjJ9Wv9S","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"settings","optional":true,"description":"

            The stage` parameters

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.cameras","optional":true,"default":"[new me.Camera2d()]","description":"

            a list of cameras (experimental)

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"settings.onResetEvent","optional":true,"description":"

            called by the state manager when reseting the object

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.onDestroyEvent","optional":true,"description":"

            called by the state manager before switching to another state

            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"mBC-OOphe02eM6FRq7lze","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            onDestroyEvent function
            \ncalled by the state manager before switching to another state

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nDyR8oC5Fymz1MtEeZbpe","name":"onResetEvent","brief":"","scope":"instance","see":["state#change"],"type":"MethodDoc","description":"

            onResetEvent function
            \ncalled by the state manager when reseting the object\nthis is typically where you will load a lev...","params":[{"identifier":"...arguments","optional":true,"variadic":true,"description":"

            optional arguments passed when switching state

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"BnJJjMp2P34Uc7-gEHNtW","name":"Text","brief":"","type":"ClassDoc","description":"

            a generic system font object.

            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"hF5MvDlbQFzNYZF1KrMDJ","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

            Define the renderable opacity
            \nSet to zero if you do not wish an object to be drawn

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WyE2lWtpPLmW1R_EngE0A","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object will always update, even when outside of the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YjKypgvMY267JxD9wPWVW","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ohQe6QxUzM5Aus9dN33w9","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

            The anchor point is used for attachment behavior, and/or when applying transformations.
            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kz0H25UJigu_jl-Tx2jbU","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z8PdJpw5-0oSfT6jsAYoX","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6VwafHSU9LJMlVEjaRKZ9","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

            the renderable physic body

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wXDymsDiQcpHNszQhGPzG","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2I6fbH9LiBS4LjU0h-9gw","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jGqguhr-ufKF7IM2HD3tl","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            absolute center of this rectangle on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B895ib9ck8zmrxPtJWXei","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the renderable default transformation matrix

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5xUno1fp4jjPrE42Y9oyg","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

            the depth of this renderable on the z axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VSSsNyiaa5VRhJ0yJPaPd","name":"fillStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

            defines the color used to draw the font.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RMBdLocpx5O8avLwf3zxb","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_GU_l0qcVYnceEVAClZMc","name":"fontSize","brief":"","defaultValue":"10","scope":"instance","type":"PropertyDoc","description":"

            the font size (in px)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o4SgUpvsTcWddmYtCH_ZC","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

            (G)ame (U)nique (Id)entifier"
            \na GUID will be allocated for any renderable object added
            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OEljfBtHGu4qO8Ll-W2vP","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            height of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jkNKnkL26w3OggL8Q4WCJ","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether the renderable object is visible and within the viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Oe1rMC6LFrVisn8QwcDy_","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            when true the renderable will be redrawn during the next update cycle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oucyt9GncbP2pBtiOlKCp","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the horizontal axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OnY2_7FEZ_haGowedMBI-","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

            returns true if this renderable is flipped on the vertical axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8kSv_dD-i0__I7s1lA5x8","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FH_RllCLZUja82sVn9bVl","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

            If true then physic collision and input events will not impact this renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jN-Rd4SIVXo5WwmS_exxc","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            make the renderable object persistent over level changes

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"awqJ_f5j5V8nMAhz1XV29","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JXea7SHdXkWryXgzFHaop","name":"lineHeight","brief":"","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

            Set the line spacing height (when displaying multi-line strings).
            \nCurrent font height will be multiplied with this va...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yxLmBLXcyn50KDEpUnQhZ","name":"lineWidth","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

            sets the current line width, in pixels, when drawing stroke

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GhfSvx4nWC0ek_dtErIiN","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k-tNQ3UOf8ZLXenisb6gv","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

            The name of the renderable

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zEyNCOEGXgxAzKTHq9lun","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

            an event handler that is called when the renderable leave or enter a camera viewport

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hdpwkLrUMmb--4JmDXjOH","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

            Array of points defining the Polygon
            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mrlrvPK5h3BqXcmMTI62B","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

            Position of the Renderable relative to its parent container

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JuIcvC-CYo5jfJWF76URx","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2k-kMActRuatddfZUOMBV","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S-eJzZLxmAOJkI_p-THdg","name":"strokeStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

            defines the color used to draw the font stroke.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gS7iqXVLB5EMuVSRm8Uj-","name":"textAlign","brief":"","defaultValue":"\"left\"","scope":"instance","type":"PropertyDoc","description":"

            Set the default text alignment (or justification),
            \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MkCfdRKPTdQecKB3uLL67","name":"textBaseline","brief":"","defaultValue":"\"top\"","scope":"instance","type":"PropertyDoc","description":"

            Set the text baseline (e.g. the Y-coordinate for the draw operation),
            \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hjhBs1C3jzQfSlTuMpMAx","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0FieRpy4wAZHgmRgVIVHv","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IcaJwIJkIrFNvKP9hhjtL","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

            the shape type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_3-CZ5eA5O94IlXSFhUX6","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

            Whether to update this object when the game is paused.

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HOHCf_Q0dmKEaYhXcuTcP","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the Rectangle

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NpZOuwJmWXcSjyfuwOSTl","name":"wordWrapWidth","brief":"","defaultValue":"-1","scope":"instance","type":"PropertyDoc","description":"

            the maximum length in CSS pixel for a single segment of text.\n(use -1 to disable word wrapping)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TEDnV7oLVe3XRoM-Rfkxb","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

            the text to be displayed

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_2zFVj4BCnaAtaCubDVuo","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the angle to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            angle in radians

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DcKnLiMuJLyfC-1cEWSWZ","name":"bold","brief":"","scope":"instance","type":"MethodDoc","description":"

            make the font bold

            ","params":[],"returns":[{"description":"

            this object for chaining

            ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vl-BXiWBaT6HkmDKwfniG","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the rectangle position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sB6LH6F4X4OanGCk47lpk","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this rectangle

            ","params":[],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zHm4IrvOXkpq2mJHa6ewv","name":"constructor","brief":"","examples":[{"caption":"","code":"let font = new me.Text(0, 0, {font: \"Arial\", size: 8, fillStyle: this.color});"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

            position of the text object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the text object

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

            the text configuration

            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.font","description":"

            a CSS family font name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","description":"

            size, or size + suffix (px, em, pt)

            ","dataType":{"tokens":[{"value":"number | string","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | string"}},{"identifier":"settings.fillStyle","optional":true,"default":"\"#000000\"","description":"

            a CSS color value

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.strokeStyle","optional":true,"default":"\"#000000\"","description":"

            a CSS color value

            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.lineWidth","optional":true,"default":"0","description":"

            line width, in pixels, when drawing stroke

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.textAlign","optional":true,"default":"\"left\"","description":"

            horizontal text alignment

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"top\"","description":"

            the text baseline

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.lineHeight","optional":true,"default":"1.0","description":"

            line spacing height

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.0, y:0.0}","description":"

            anchor point to draw the text at

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.wordWrapWidth","optional":true,"description":"

            the maximum length in CSS pixel for a single segment of text

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"default":"\"\"","description":"

            a string, or an array of strings

            ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ysY8TrL9hgnqzdXEubyxj","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the rectangle contains the given point or rectangle

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point, or a rectangle to test

            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the rectangle contain the given point or rectangle, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"b53vxhwn8srqcjlCZWGI5","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

            copy the position and size of the given rectangle into this one

            ","params":[{"identifier":"rect","optional":false,"description":"

            Source rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            new rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"44B7mkkdyqUl6-rSAHx8Z","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the distance to the specified target

            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            distance

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q0UoKK_7-ggEL_Q2AOsjn","name":"draw","brief":"","scope":"instance","type":"MethodDoc","description":"

            draw a text at the specified coord

            ","params":[{"identifier":"renderer","optional":false,"description":"

            Reference to the destination renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KlWhSp7R1oitWLWQ8NqMz","name":"drawStroke","brief":"","deprecated":"since 15.0.0","scope":"instance","type":"MethodDoc","description":"

            draw a stroke text at the specified coord, as defined by the lineWidth and fillStroke properties...","params":[{"identifier":"renderer","optional":false,"description":"

            Reference to the destination renderer instance

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_R3dBi6myXy3Z2UA9zHzL","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is identical to the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if equals

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"yTCz_gYBaFifpckUVpkAx","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

            flip the renderable on the horizontal axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4JOTINY_mYs_APc3v7iCS","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

            flip the renderable on the vertical axis (around the center of the renderable)

            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

            true to flip this renderable.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IkNmjEdc7QTUg9A2OWDwW","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

            return the renderable absolute position in the game world

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zWNypHo_9kw50vUr_ciJ8","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns the bounding box for this renderable

            ","params":[],"returns":[{"description":"

            bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nRHK0Z3uu7T2kL5zQLOgA","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

            returns a list of indices for all triangles defined in this polygon

            ","params":[],"returns":[{"description":"

            an array of vertex indices for all triangles forming this polygon.

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"bZX_xcGFa1gfw-7W-AsYQ","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            get the renderable alpha channel value

            ","params":[],"returns":[{"description":"

            current opacity value between 0 and 1

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fB4UGSAqZnlXwtgD0n08b","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

            ","params":[],"returns":[{"description":"

            true if the vertices are convex, false if not, null if not computable

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"SNa4jkkpYk7HvhVunSRVE","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this rectangle are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"m8fIocMDjp8URRSYT_Zig","name":"italic","brief":"","scope":"instance","type":"MethodDoc","description":"

            make the font italic

            ","params":[],"returns":[{"description":"

            this object for chaining

            ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rTz21XzVR2WJm4rxuNt01","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable towards the given target.

            ","params":[{"identifier":"target","optional":false,"description":"

            the renderable or position to look at

            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LjbDpfHReSF17mPjLRLsN","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

            measure the given text size in pixels

            ","params":[{"identifier":"renderer","optional":false,"description":"

            reference to the active renderer

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"description":"

            the text to be measured

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

            a TextMetrics object defining the dimensions of the given piece of text

            ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S7lCmgdWxPXCIWHSxizVx","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

            ","params":[{"identifier":"response","optional":false,"description":"

            the collision response object

            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

            the other renderable touching this one (a reference to response.a or response.b)

            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

            true if the object should respond to the collision (its position and velocity will be corrected)

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"zWLoVOBFpLrcQIRN1JFZY","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

            OnDestroy Notification function
            \nCalled by engine before deleting the object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jQZkWZG7NtkS0W7lKn3yV","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            check if this rectangle is intersecting with the specified one

            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            true if overlaps

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"A_D-n6aGMW3SSJssgQewe","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

            restore the rendering context after drawing (automatically called by melonJS).

            ","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"K0Y_p9koy5wfDENWu1P0Z","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

            a renderer object

            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"dbr9Rg37yg-_-hdGO6DMF","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s6pyOCdXqmbQA_G7XONpS","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

            resize the rectangle

            ","params":[{"identifier":"w","optional":false,"description":"

            new width of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

            new height of the rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H32pdcKvk118LZVhL9rfr","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

            Rotate this renderable by the specified angle (in radians).

            ","params":[{"identifier":"angle","optional":false,"description":"

            The angle to rotate (in radians)

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

            an optional point to rotate around

            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pD-TcMQbo2MimlB0dGGOn","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

            a number representing the abscissa of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

            a number representing the ordinate of the scaling vector.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5FDwy3ummJH0lndUc9Ofs","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

            scale the renderable around his anchor point

            ","params":[{"identifier":"v","optional":false,"description":"

            scaling vector

            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VpMTMYgsvPIJnrL-c2IUV","name":"setFont","brief":"","examples":[{"caption":"","code":"font.setFont(\"Arial\", 20);\nfont.setFont(\"Arial\", \"1.5em\");"}],"scope":"instance","type":"MethodDoc","description":"

            set the font family and size

            ","params":[{"identifier":"font","optional":false,"description":"

            a CSS font name

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":true,"default":"10","description":"

            size in px, or size + suffix (px, em, pt)

            ","dataType":{"tokens":[{"value":"number | string","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | string"}}],"returns":[{"description":"

            this object for chaining

            ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ov9EDwoZld2kg2_mATvYA","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the renderable alpha channel value

            ","params":[{"identifier":"alpha","optional":false,"description":"

            opacity value between 0.0 and 1.0

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5fU5luCzdzLz16jUXIXg_","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

            set new value to the rectangle shape

            ","params":[{"identifier":"x","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            position of the Rectangle

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

            width of the rectangle, or an array of vector defining the rectangle

            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

            height of the rectangle, if a numeral width parameter is specified

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bsMcDhmdGt7b1P8nNHH90","name":"setText","brief":"","scope":"instance","type":"MethodDoc","description":"

            change the text to be displayed

            ","params":[{"identifier":"value","optional":false,"default":"\"\"","description":"

            a string, or an array of strings

            ","dataType":{"tokens":[{"value":"number | string | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | string | %2"}}],"returns":[{"description":"

            this object for chaining

            ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5BQ6gb2Th-zwges0G8mWU","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

            set the vertices defining this Polygon

            ","params":[{"identifier":"vertices","optional":false,"description":"

            array of vector or vertice defining the Polygon

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

            this instance for objecf chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DYGzCqRJUncBwC4vD8nW4","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the Polygon to the given position vector.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7GVXZAKZsHD4lBd20mhv1","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply a 2d projection to this shapen

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"82feGace5tsftJB-ufbE2","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

            apply an isometric projection to this shape

            ","params":[],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DQwCigHoJWOTkjAgUovtF","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this box.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this rectangle.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NhSsfJdQlu-crq25H5AiY","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

            multiply the renderable currentTransform with the given matrix

            ","params":[{"identifier":"m","optional":false,"description":"

            the transformation matrix

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3QKWtbuT3dXJ9HpzNGKEI","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            translate the Polygon by the specified offset

            ","params":[{"identifier":"x","description":"

            x offset or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y offset

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            Reference to this object for method chaining

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eZH3OT5Ir26ERRk6KjcDp","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

            merge this rectangle with another one

            ","params":[{"identifier":"rect","optional":false,"description":"

            other rectangle to union with

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

            the union(ed) rectangle

            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RBn7osj57SwmX18Cjr13p","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            update function (automatically called by melonJS).

            ","params":[{"identifier":"dt","optional":false,"description":"

            time since the last update in milliseconds.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            true if the renderable is dirty

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"q_ceYLhlFQHjSNsg_J1gx","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            update the bounding box for this shape.

            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

            update the bounds size and position in (world) absolute coordinates

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

            this shape bounding box Rectangle object

            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"omZOx7b5BuzRHjBjMkee1","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

            called when the anchor point value is changed

            ","params":[{"identifier":"x","optional":false,"description":"

            the new X value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the new Y value to be set for the anchor

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"f1nwZBziODVy6aEL2dn3-","name":"TextMetrics","brief":"","type":"ClassDoc","description":"

            a Text Metrics object that contains helper for text manipulation

            ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"gYoxPMOja2Y2YWOoog4SO","name":"ancestor","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

            a reference to the parent object that contains this TextMetrics object

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6c7htCkiBqNybYPbf65Fn","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

            bottom coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iTxsyciCYyhqxkUhbgiQd","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

            return the center position of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vf-6lEI3BcwZ50pjbaDY5","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the x axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i8Pe6cVKWbVlmSu8N9FAi","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

            center position of the bound on the y axis

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"com1viPV1xQMpzd3stL-b","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VhWuNy9vP9d_X2dpvldVm","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

            left coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PibM9jLRea_mHumZo01wO","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

            right coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D7u2O2VdG0QQcaD0DGy0m","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

            top coordinate of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kFNP7QUTohczGphZeSWw1","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

            the object type (used internally)

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VhIbjJhU7btykk9NyL656","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

            width of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-xsFVh1TcCuTvR3ACMscJ","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

            x position of the bound

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Pei9NxPtc_yeYPhj4KcK","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

            y position of the bounds

            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5_DzYxnezEZeZJaWzQ4px","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given vertices to the bounds definition.

            ","params":[{"identifier":"vertices","optional":false,"description":"

            an array of Vector2d or Point

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

            either to reset the bounds before adding the new vertices

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ed28Di-c6N_qs_WwPTJf9","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given bounds to the bounds definition.

            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

            either to reset the bounds before adding the new vertices

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"9ojirEqAbPAhk-96Dhhcu","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given quad coordinates to this bound definition, multiplied by the given matrix

            ","params":[{"identifier":"x0","optional":false,"description":"

            left X coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

            top Y coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

            right X coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

            bottom y coordinates of the quad

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

            an optional transform to apply to the given frame coordinates

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VIt5Kuvi1dYOSxV6Gg2RQ","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

            add the given point to the bounds definition.

            ","params":[{"identifier":"point","optional":false,"description":"

            the vector or point to be added to the bounds

            ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

            an optional transform to apply to the given point (if the given point is a Vector2d)

            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZbdUYUJowUsRDsn6KnTnH","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

            center the bounds position around the given coordinates

            ","params":[{"identifier":"x","optional":false,"description":"

            the x coordinate around which to center this bounds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

            the y coordinate around which to center this bounds

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"llstF_OexzIXOIGNZ-nsD","name":"clear","brief":"

            reset the bound

            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N87R5bQBNOKolJSZasoBf","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

            clone this bounds

            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"e-kNcrqoIKdXQ9G2Lxg-s","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"ancestor","optional":false,"description":"

            the parent object that contains this TextMetrics object

            ","dataType":{"tokens":[{"value":"Text | BitmapText","kind":"canonical"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"PHj17iAF_hUPQ7Z9zE3zH","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

            Returns true if the bounds contains the given point.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to check

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

            y coordinate

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            True if the bounds contain the point, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"oqGE-6nbfkOiQSosnc78z","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

            determines whether all coordinates of this bounds are finite numbers.

            ","params":[],"returns":[{"description":"

            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"c02ZJGKuvMl48sZntko9n","name":"lineHeight","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the height of a segment of inline text in CSS pixels.

            ","params":[],"returns":[{"description":"

            the height of a segment of inline text in CSS pixels.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JhbfKrztNc-htl-Hhmtgr","name":"lineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns the width of the given segment of inline text in CSS pixels.

            ","params":[{"identifier":"text","optional":false,"description":"

            the text to be measured

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"description":"

            reference to an active 2d context for canvas rendering

            ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            the width of the given segment of inline text in CSS pixels.

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wm3qdDSBrpu6WuJxrogeD","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

            measure the given text size in CSS pixels

            ","params":[{"identifier":"text","optional":false,"description":"

            the text to be measured

            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"description":"

            reference to an active 2d context for canvas rendering

            ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            this

            ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"D6M6s96iXXzWKPsk3aojL","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns true if the two bounds intersect.

            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

            True if the bounds overlap, otherwise false

            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9vBPPO55kFwb7Lan7jklX","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

            sets the bounds to the given min and max value

            ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Cqi3uKgB4Mv3lI5TvKa5F","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Shifts the bounds to the given x, y position.

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to shift to

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kHRjTD2slzSwU3vLrfoOs","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

            Returns a polygon whose edges are the same as this bounds.

            ","params":[],"returns":[{"description":"

            a new Polygon that represents this bounds.

            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YDnaKVxgEBQufDyVYanvC","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

            Translates the bounds by the given point

            ","params":[{"identifier":"x","description":"

            x coordinate or a vector point to translate by

            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"-r_IrDGDskExyavh7B-b3","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

            Updates bounds using the given vertices

            ","params":[{"identifier":"vertices","optional":false,"description":"

            an array of Vector2d or Point

            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"PoRYZ9qZQwA0dq7Qhd7bH","name":"wordWrap","brief":"","scope":"instance","type":"MethodDoc","description":"

            wrap the given text based on the given width

            ","params":[{"identifier":"text","optional":false,"description":"

            the text to be wrapped

            ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}},{"identifier":"width","optional":false,"description":"

            maximum width of one segment of text in css pixel

            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"context","optional":true,"description":"

            reference to an active 2d context for canvas rendering

            ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

            an array of string representing wrapped text

            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"wBgCTXZnc1wl3s8j1sM6M","name":"TextureAtlas","brief":"","type":"ClassDoc","description":"

            A Texture atlas class, currently supports :

            \n
              \n
            • [TexturePacker]{@link http://www.codeandweb.com/texturepacke...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"scgVvZqXjyy9I_2xZW2gh","name":"addRegion","brief":"","scope":"instance","type":"MethodDoc","description":"

              add a region to the atlas

              ","params":[{"identifier":"name","optional":false,"description":"

              region mame

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":false,"description":"

              x origin of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y origin of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              height of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the created region

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"70xc4zgFWaTjtY8g6QGtt","name":"addUVs","brief":"","scope":"instance","type":"MethodDoc","description":"

              add uvs mapping for the given region

              ","params":[{"identifier":"atlas","optional":false,"description":"

              the atlas dictionnary where the region is define

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"name","optional":false,"description":"

              region (or frame) name

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"w","optional":false,"description":"

              the width of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              the height of the region

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the created region UVs

              ","dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WnhTzUykkJblpecL2vbBS","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a texture atlas from a JSON Object\n game.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\")\n );\n\n // create a texture atlas from a multipack JSON Object\n game.texture = new me.TextureAtlas([\n me.loader.getJSON(\"texture-0\"),\n me.loader.getJSON(\"texture-1\"),\n me.loader.getJSON(\"texture-2\")\n ]);\n\n // create a texture atlas for a spritesheet with an anchorPoint in the center of each frame\n game.texture = new me.TextureAtlas(\n {\n framewidth : 32,\n frameheight : 32,\n anchorPoint : new me.Vector2d(0.5, 0.5)\n },\n me.loader.getImage(\"spritesheet\")"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"atlases","optional":false,"description":"

              atlas information. See {@link loader.getJSON}

              ","dataType":{"tokens":[{"value":"object | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"object | %1"}},{"identifier":"src","optional":true,"default":"atlas.meta.image","description":"

              Image source

              ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | string | Array | Array | Array","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | %2 | string | %3<%4> | %5<%6> | %7"}},{"identifier":"cache","optional":true,"default":"false","description":"

              Use true to skip caching this Texture

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"0y1y5ocjHiqpkvOHXPAr-","name":"createAnimationFromName","brief":"","examples":[{"caption":"","code":" // create a new texture object under the `game` namespace\n game.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n );\n\n // create a new Animated Sprite\n let sprite = game.texture.createAnimationFromName([\n \"walk0001.png\", \"walk0002.png\", \"walk0003.png\",\n \"walk0004.png\", \"walk0005.png\", \"walk0006.png\",\n \"walk0007.png\", \"walk0008.png\", \"walk0009.png\",\n \"walk0010.png\", \"walk0011.png\"\n ]);\n\n // define an additional basic walking animation\n sprite.addAnimation (\"simple_walk\", [0,2,1]);\n // you can also use frame name to define your animation\n sprite.addAnimation (\"speed_walk\", [\"walk0007.png\", \"walk0008.png\", \"walk0009.png\", \"walk0010.png\"]);\n // set the default animation\n sprite.setCurrentAnimation(\"simple_walk\");\n // set the renderable position to bottom center\n sprite.anchorPoint.set(0.5, 1.0);"}],"scope":"instance","type":"MethodDoc","description":"

              Create an animation object using the first region found using all specified names

              ","params":[{"identifier":"names","optional":false,"description":"

              list of names for each sprite\n(when manually creating a Texture out of a spritesheet, only numeric values are authorized)

              ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | %3<%2>"}},{"identifier":"settings","optional":true,"description":"

              Additional settings passed to the {@link Sprite} contructor

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"luEVX2APjpmHkBBsy9dbR","name":"createSpriteFromName","brief":"","examples":[{"caption":"","code":"// create a new texture object under the `game` namespace\ngame.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n);\n...\n...\n// create a new \"coin\" sprite\nlet sprite = game.texture.createSpriteFromName(\"coin.png\");\n// set the renderable position to bottom center\nsprite.anchorPoint.set(0.5, 1.0);\n...\n...\n// create a 9-slice sprite\nlet dialogPanel = game.texture.createSpriteFromName(\n \"rpg_dialo.png\",\n // width & height are mandatory for 9-slice sprites\n { width: this.width, height: this.height },\n true\n);"}],"scope":"instance","type":"MethodDoc","description":"

              Create a sprite object using the first region found using the specified name

              ","params":[{"identifier":"name","optional":false,"description":"

              name of the sprite

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings","optional":true,"description":"

              Additional settings passed to the {@link Sprite} contructor

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"nineSlice","optional":true,"default":"false","description":"

              if true returns a 9-slice sprite

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"Sprite | NineSliceSprite","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"XcHX7F0egorl-LLGGFPFw","name":"getAtlas","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the default or specified atlas dictionnary

              ","params":[{"identifier":"name","optional":true,"description":"

              atlas name in case of multipack textures

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"Df-tybuEutY4_27IVBqwx","name":"getFormat","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the format of the atlas dictionnary

              ","params":[],"returns":[{"description":"

              will return "texturepacker", or "ShoeBox", or "melonJS", or "Spritesheet (fixed cell si...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"8sCIr99QVSJJBXOa185TZ","name":"getRegion","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a normalized region (or frame) information for the specified sprite name

              ","params":[{"identifier":"name","optional":false,"description":"

              name of the sprite

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"atlas","optional":true,"description":"

              name of a specific atlas where to search for the region

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"jGywz5A2BLTDerHzQ-Hs0","name":"getTexture","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the source texture for the given region (or default one if none specified)

              ","params":[{"identifier":"region","optional":true,"description":"

              region name in case of multipack textures

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"Yv6MZG3k3g2ZIFX8DQFEs","name":"getUVs","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the uvs mapping for the given region

              ","params":[{"identifier":"name","optional":false,"description":"

              region (or frame) name

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

              region Uvs

              ","dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"tDI1eQAvluDvQHEy5CAsO","name":"Tile","brief":"","type":"ClassDoc","description":"

              a basic tile object

              ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"AeVVpA2Ri198uZUSmbn8C","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w6CAc1TE_zMeKw20uZuVO","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

              return the center position of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EUutirsWjSHQ577cNmWHl","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              center position of the bound on the x axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1sTDahLHUCzt5dLfGSzQr","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              center position of the bound on the y axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pIYMsHT3jhCJ7_DFp6ydR","name":"flipped","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Global flag that indicates if the tile is flipped

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3JRvyyhKbhGMvU2oiQQP-","name":"flippedAD","brief":"","scope":"instance","type":"PropertyDoc","description":"

              True if the tile is flipped anti-diagonally

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9gfqr16Y50AYEDcCJZS-2","name":"flippedX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              True if the tile is flipped horizontally

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VPFJO8opfH0R3o7DUzexB","name":"flippedY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              True if the tile is flipped vertically

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YIZGiJLMNgA_Bo8LBN5_k","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XrOnvmWyzeOCSShhFS-7C","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o0ETl0yjOyE7e1aNbrDiq","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OI2O-ieJtEBVu1KP7uFx7","name":"tileId","brief":"","scope":"instance","type":"PropertyDoc","description":"

              tileId

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7p54NwC7XCWiWAgGCkvDV","name":"tileset","brief":"","scope":"instance","type":"PropertyDoc","description":"

              tileset

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gkeiciAMdzlavP0md1w5c","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VrSQjMI11r21PGh1dQDS4","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

              the object type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hCB1IH-tCnl_oEF4_75kn","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VJg9kirc2rdo-yhMRjca-","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

              x position of the bound

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_txoBERYMauogSqNBz975","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

              y position of the bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OUXTM9XbFDhvTdctTWzyS","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

              add the given vertices to the bounds definition.

              ","params":[{"identifier":"vertices","optional":false,"description":"

              an array of Vector2d or Point

              ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

              either to reset the bounds before adding the new vertices

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"XMBsMkPuBSN0CrCfdx6H9","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              add the given bounds to the bounds definition.

              ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

              either to reset the bounds before adding the new vertices

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"uDbV4jQlVFiyLidXVI56i","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

              add the given quad coordinates to this bound definition, multiplied by the given matrix

              ","params":[{"identifier":"x0","optional":false,"description":"

              left X coordinates of the quad

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

              top Y coordinates of the quad

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

              right X coordinates of the quad

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

              bottom y coordinates of the quad

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

              an optional transform to apply to the given frame coordinates

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"TVHD91LwAV3dvl3Fk_0H8","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

              add the given point to the bounds definition.

              ","params":[{"identifier":"point","optional":false,"description":"

              the vector or point to be added to the bounds

              ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

              an optional transform to apply to the given point (if the given point is a Vector2d)

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4-vIWQQKIaYp_lZa-N8bv","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the bounds position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this bounds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this bounds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FTf2IZdLoT_WQUXySIqCN","name":"clear","brief":"

              reset the bound

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"duQ-Ntw2J6_KImfbR58ml","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this bounds

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pO8aIBOdlEUTOTqsG-Zpp","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

              x index of the Tile in the map

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y index of the Tile in the map

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"gid","optional":false,"description":"

              tile gid

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileset","optional":false,"description":"

              the corresponding tileset object

              ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZKJAkqip--jmLkeFErchA","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the bounds contains the given point.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to check

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the bounds contain the point, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hROh4wEYUw3C6KsKf8_LO","name":"getRenderable","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a renderable object for this Tile object

              ","params":[{"identifier":"settings","optional":true,"description":"

              see {@link Sprite}

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

              a me.Sprite object

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"54vpH3ph2TbNX_osfbjPK","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this bounds are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ATw6t6JIkZH7_WqYjTYQG","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the two bounds intersect.

              ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              True if the bounds overlap, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1Sd323SzBD6N4pCGoIHgv","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

              sets the bounds to the given min and max value

              ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ALIBlhhtatju5qHdjp5nN","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the bounds to the given x, y position.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sosKX0o76pDwyHoW2O6Zk","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this bounds.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this bounds.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Rv-vw0Fko0gKvuwK_v7lm","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Translates the bounds by the given point

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"I34cBbZmoo_dMTMOWvQBg","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

              Updates bounds using the given vertices

              ","params":[{"identifier":"vertices","optional":false,"description":"

              an array of Vector2d or Point

              ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"p4f4cV6CSF7BiuvGyBFHp","name":"Timer","brief":"","see":["{@link timer} the default global timer instance"],"type":"ClassDoc","description":"

              a Timer class to manage timing related function (FPS, Game Tick, Time...)

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"yNDzG3uYj5hvl-_y2SuXP","name":"fps","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Last measured fps rate.
              \nThis feature is disabled by default, unless the debugPanel is enabled/visible.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G0LcawEcY3FYk1dy5dZix","name":"interpolation","brief":"","defaultValue":"false","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

              Enable/disable frame interpolation

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"51hX33LpDic-mugJhnMzb","name":"maxfps","brief":"","access":"public","defaultValue":"60","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

              Set the maximum target display frame per second

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"slbGbT9BdfbdLqr7oSrmq","name":"tick","brief":"","access":"public","defaultValue":"1","scope":"instance","see":["interpolation"],"type":"PropertyDoc","description":"

              Last game tick value.
              \nUse this value to scale velocities during frame drops due to slow hardware or when setting an F...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SF38RdBBsdfU1PF_-RYfH","name":"clearInterval","brief":"","scope":"instance","type":"MethodDoc","description":"

              cancels the timed, repeating action which was previously established by a call to setInterval().

              ","params":[{"identifier":"intervalID","optional":false,"description":"

              ID of the interval to be cleared

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Hg72KN2EJ93HIEZjYi3vd","name":"clearTimeout","brief":"","scope":"instance","type":"MethodDoc","description":"

              Cancels a timeout previously established by calling setTimeout().

              ","params":[{"identifier":"timeoutID","optional":false,"description":"

              ID of the timeout to be cancelled

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DVuJgO3-CHgaLdl_hsllK","name":"getDelta","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return elapsed time in milliseconds since the last update

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Hq_SoSbiec-wxVjN0jtex","name":"getTime","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return the current timestamp in milliseconds
              \nsince the game has started or since linux epoch (based on browser suppor...","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fyhSk5QDUe8fz6kaSufU4","name":"setInterval","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" every 1000ms\nme.timer.setInterval(myFunction, 1000);\n// set a timer to call \"myFunction\" every 1000ms (respecting the pause state) and passing param1 and param2\nme.timer.setInterval(myFunction, 1000, true, param1, param2);"}],"scope":"instance","type":"MethodDoc","description":"

              Calls a function continously at the specified interval. See setTimeout to call function a single time.

              ","params":[{"identifier":"fn","optional":false,"description":"

              the function to execute

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

              the number of milliseconds (thousandths of a second) on how often to execute the function

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pauseable","optional":true,"default":"true","description":"

              respects the pause state of the engine.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"args","optional":false,"variadic":true,"description":"

              optional parameters which are passed through to the function specified by fn once the timer expires.

              ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

              a numeric, non-zero value which identifies the timer created by the call to setInterval(), which can be used later with me...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M2ZFIU_loFtd4C9sOHSzA","name":"setTimeout","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" after 1000ms\nme.timer.setTimeout(myFunction, 1000);\n// set a timer to call \"myFunction\" after 1000ms (respecting the pause state) and passing param1 and param2\nme.timer.setTimeout(myFunction, 1000, true, param1, param2);"}],"scope":"instance","type":"MethodDoc","description":"

              Calls a function once after a specified delay. See me.timer.setInterval to repeativly call a function.

              ","params":[{"identifier":"fn","optional":false,"description":"

              the function you want to execute after delay milliseconds.

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

              the number of milliseconds (thousandths of a second) that the function call should be delayed by.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pauseable","optional":true,"default":"true","description":"

              respects the pause state of the engine.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"args","optional":false,"variadic":true,"description":"

              optional parameters which are passed through to the function specified by fn once the timer expires.

              ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

              a positive integer value which identifies the timer created by the call to setTimeout(), which can be used later with me.t...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"CK4hbJtz0rd5fDlNVQBHF","name":"TMXHexagonalRenderer","brief":"","type":"ClassDoc","description":"

              an Hexagonal Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"1nEvQ0G-qakOLtmoTylc8","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the renderer can render the specified map or layer

              ","params":[{"identifier":"component","optional":false,"description":"

              TMX Map or Layer

              ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"2TKoLMb_g_fjMniWmGvrm","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

              the TMX map

              ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"hH_ARcIykFAwJCkEfCbbU","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given tile at the specified layer

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

              X coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

              the tile object to draw

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dmO6nhVw4X_FqQsHD6W-3","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given TMX Layer for the given area

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

              a TMX Layer object

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

              the area of the layer to draw

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5ghPDUi4A6grU7_UTi7vE","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the bounding rect for this map renderer

              ","params":[{"identifier":"layer","optional":true,"description":"

              calculate the bounding rect for a specific layer (will return a new bounds object)

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o2BixfwA9uBY-lK7ic_hS","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile position corresponding to the specified pixel

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_N8lVo0-nHYgFMpc4bPky","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the pixel position corresponding of the specified tile

              ","params":[{"identifier":"col","optional":false,"description":"

              tile horizontal position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

              tile vertical position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"Iy79hgR3J7dsV5pDqJIpR","name":"TMXIsometricRenderer","brief":"","type":"ClassDoc","description":"

              an Isometric Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"m6CxUAhS9PdKY96JcGqdg","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the renderer can render the specified map or layer

              ","params":[{"identifier":"component","optional":false,"description":"

              TMX Map or Layer

              ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"J6TVZNYDVwkWJ1--uFH18","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

              the TMX map

              ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"W4CzeRA4NhNStnSW2jsKc","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given tile at the specified layer

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

              X coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

              the tile object to draw

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"TfmqRfOhlR9Lv1mToQEoC","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given TMX Layer for the given area

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

              a TMX Layer object

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

              the area of the layer to draw

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"tovgD-r6wb9UYE2GPhVLg","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the bounding rect for this map renderer

              ","params":[{"identifier":"layer","optional":true,"description":"

              calculate the bounding rect for a specific layer (will return a new bounds object)

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iB9C3hGW6Lx3SXDb147d3","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile position corresponding to the specified pixel

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qS-MA47uCm4636fnVE516","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the pixel position corresponding of the specified tile

              ","params":[{"identifier":"col","optional":false,"description":"

              tile horizontal position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

              tile vertical position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"DVveWtpUmAaVF5Tu1XTox","name":"TMXLayer","brief":"","type":"ClassDoc","description":"

              a TMX Tile Layer Object\nTiled QT 0.7.x format

              ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"UNMOD8yjYwZSBu8lbYRCF","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

              Define the renderable opacity
              \nSet to zero if you do not wish an object to be drawn

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gChNJXrzZoFe66Ay1Nk1p","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object will always update, even when outside of the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x2F8rD9eLzFxpIjGjK1xN","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              a reference to the parent object that contains this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0i7cJVqS-2h7EC4QKsW7K","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

              The anchor point is used for attachment behavior, and/or when applying transformations.
              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SdHsC7FFY9Kh2vqK8WU9i","name":"animatedTilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

              All animated tilesets in this layer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g8PMKuAwKjLro96PJ-crQ","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xIJTPaUSpD7t2OSeNGJav","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eBUiB38MBR7Drnp7b_l1T","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

              the renderable physic body

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ELaxjNLUw8CX17SA5kUMR","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WgZHgN9N-n1kwGATh6vMp","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U73oMzHSVhmWujQNGfvXR","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zW1gFzUuwLf0cIT30_Yol","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the layer class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"68r7CKyHtX6JYXD1yFoLJ","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tkAaS1HANov81eK6i_WEf","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rs1b8TXlnSNovnaa6-su-","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mGo_te_abi-7OD6Fwypla","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

              (G)ame (U)nique (Id)entifier"
              \na GUID will be allocated for any renderable object added
              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aioOqsxW63wW0Haoa5GLg","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IgszG8fkvNgc8sgo8qb86","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object is visible and within the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"50pXKvTS6Cvf4a46Z2mOG","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Layer contains tileset animations

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e9t02_QyJbhpfIDZK4ESc","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              when true the renderable will be redrawn during the next update cycle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M8arwXXMon-BX5iCJ1TEB","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZKWA3mrcx-mNNOfBmQwhk","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nFefVvGii2MAP_hyk4f-A","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"poDk4pbhsFYB3v7AocNLQ","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              If true then physic collision and input events will not impact this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rjWKt85jPMl6n9IKgUW2Z","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YO0SLvV7RtVJv3c2CZrW9","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zPLZ_v92BVpX-MdGbmoe8","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tWzWxu-cetxTyMamxc8oD","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zfTpvFIyRzq3t-nxDIf56","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

              an event handler that is called when the renderable leave or enter a camera viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wcLEDhNPIDkoMN9yIWRho","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Array of points defining the Polygon
              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-_I0s65hjguDTuHXShxF5","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VgLjaJpbzNPEuAduxJwuh","name":"renderorder","brief":"","defaultValue":"\"right-down\"","scope":"instance","type":"PropertyDoc","description":"

              the order in which tiles on orthogonal tile layers are rendered.\n(valid values are "left-down", "left-up&qu...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ycKIPfNUx1g0CFKW8rycB","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fjSFpX49KF1l5VYLpE8Oc","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U9LPrz5ln_KOLzwKyfPt9","name":"tilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The Layer corresponding Tilesets

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cujgxCCAVCvSHHbvGZeGe","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qOLypRr3ZtDVUbvEwNgCh","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3BPtm2zjQi0vT9tbTRni6","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q1ai8JofZbljyPhyOUT_T","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether to update this object when the game is paused.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2XYZAnEOT1ZIXRoAzyrDP","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6CRa-0yJnQQdnJPPNfdYN","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Horizontal layer offset in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BFNRmvR5ldkEdy9I_X44U","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Vertical layer offset in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-fjXlGP6bZR8zYCtMop6r","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"INWzqjnffOd3wNC5p5EOZ","name":"cellAt","brief":"","examples":[{"caption":"","code":"// return the first tile at offset 0, 0\nlet tile = layer.cellAt(0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

              Return the Tile object at the specified tile coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              x position of the tile (in Tile unit)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              x position of the tile (in Tile unit)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"boundsCheck","optional":true,"default":"true","description":"

              check first if within the layer bounds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              corresponding tile or null if there is no defined tile at the position or if outside of the layer bounds

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lPM1QelvKZ0SYjPeNYaiZ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the rectangle position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7-n7ngGaOJk1jeeCv9O0J","name":"clearTile","brief":"","examples":[{"caption":"","code":"me.game.world.getChildByType(me.TMXLayer).forEach(function(layer) {\n // clear all tiles at the given x,y coordinates\n layer.clearTile(x, y);\n});"}],"scope":"instance","type":"MethodDoc","description":"

              clear the tile at the specified position

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate (in map coordinates: row/column)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate (in map coordinates: row/column)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6IOkGOVK6zQ0xiBQHlu0e","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this rectangle

              ","params":[],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_iM6JDLsOV0Vl8IsWVkSN","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

              layer data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#layer})

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"data","optional":false,"description":"

              layer data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#layer})

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"tilewidth","optional":false,"description":"

              width of each tile in pixels

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileheight","optional":false,"description":"

              height of each tile in pixels

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"orientation","optional":false,"description":"

              "isometric" or "orthogonal"

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"tilesets","optional":false,"description":"

              tileset as defined in Tiled

              ","dataType":{"tokens":[{"value":"TMXTilesetGroup","kind":"canonical"},{"value":"TMXTilesetGroup","kind":"link"}],"template":"%1"}},{"identifier":"z","optional":false,"description":"

              z-index position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kmzQSSI-QzwvZHz-_q95p","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the rectangle contains the given point or rectangle

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point, or a rectangle to test

              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the rectangle contain the given point or rectangle, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fZvV7tOP_-M6YzV1eJK1J","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              copy the position and size of the given rectangle into this one

              ","params":[{"identifier":"rect","optional":false,"description":"

              Source rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CLAh_QBx0d33dGiTUZJhr","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              distance

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tpuu4Mw8uuGS0KFOOa1pK","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer instance

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

              the viewport to (re)draw

              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7HQWFPpL5niDQooVli_EP","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is identical to the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if equals

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kJvwZqlIFFcLP9RWyTLHj","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

              flip the renderable on the horizontal axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8-D86Qm4iXYAfeK3NZyBH","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

              flip the renderable on the vertical axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z0v3Ju5-16sB_P0JPVj5s","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the renderable absolute position in the game world

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z62DZmQrQ2NGWPBRp4PEc","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the bounding box for this renderable

              ","params":[],"returns":[{"description":"

              bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IDd-9Iym2KaIHedQt6zZR","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns a list of indices for all triangles defined in this polygon

              ","params":[],"returns":[{"description":"

              an array of vertex indices for all triangles forming this polygon.

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"PgMVfMdIoJLMEUeflwV5O","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the renderable alpha channel value

              ","params":[],"returns":[{"description":"

              current opacity value between 0 and 1

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wm1KlTkwZbCUqqiPgr3kz","name":"getRenderer","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return the layer current renderer object

              ","params":[],"returns":[{"description":"

              renderer

              ","dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4hnfV_b2vB21LDrSSGYgZ","name":"getTile","brief":"","examples":[{"caption":"","code":"// get the TMX Map Layer called \"Front layer\"\nlet layer = me.game.world.getChildByName(\"Front Layer\")[0];\n// get the tile object corresponding to the latest pointer position\nlet tile = layer.getTile(me.input.pointer.x, me.input.pointer.y);"}],"scope":"instance","type":"MethodDoc","description":"

              Return the Tile object at the specified position

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              corresponding tile or null if there is no defined tile at the coordinate or if outside of the layer bounds

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lSfMWS7-dovm24Yh2Hg2n","name":"getTileById","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a new the Tile object corresponding to the given tile id

              ","params":[{"identifier":"tileId","optional":false,"description":"

              tileId

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

              X coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the tile object

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"56FYBP0ORGTweML5Wk7j6","name":"getTileId","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return the TileId of the Tile at the specified position

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              TileId or null if there is no Tile at the given position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1stmZKavLMDhabRFtkcWT","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

              ","params":[],"returns":[{"description":"

              true if the vertices are convex, false if not, null if not computable

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QlSJO8QASpOL5BALZFvDa","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this rectangle are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"w9IZGRDcg6ML1edB-ad0S","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable towards the given target.

              ","params":[{"identifier":"target","optional":false,"description":"

              the renderable or position to look at

              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QmnIwaMS0jU_q8074IwSs","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

              onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

              ","params":[{"identifier":"response","optional":false,"description":"

              the collision response object

              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

              the other renderable touching this one (a reference to response.a or response.b)

              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

              true if the object should respond to the collision (its position and velocity will be corrected)

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tIdK6LVMf5lY02Xm0h2Jd","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OJDFgz-pcKDznmDeXqCJ8","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is intersecting with the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6GeGs_4t1iCet-lf_eB7J","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

              restore the rendering context after drawing (automatically called by melonJS).

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"rVwzkRVCAO_DEhxljPq3x","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"mB9H1q6yqP6yyUF4oA7rm","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q7IDxtKjPlHkuB9gOL5x6","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resize the rectangle

              ","params":[{"identifier":"w","optional":false,"description":"

              new width of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              new height of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uB7H9ZKH8W5CcfnI2ICFe","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TgOSsnDTUshYUCIPbdRGh","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

              a number representing the abscissa of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

              a number representing the ordinate of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zUm9HulQXJw7QadDN9-lP","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point

              ","params":[{"identifier":"v","optional":false,"description":"

              scaling vector

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"preBkPtgAr_kpP6AwIRrA","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the renderable alpha channel value

              ","params":[{"identifier":"alpha","optional":false,"description":"

              opacity value between 0.0 and 1.0

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wlfO4jjkgcx9vnH3xoT7-","name":"setRenderer","brief":"","examples":[{"caption":"","code":"// use the parent map default renderer\nlet layer = new me.TMXLayer(...);\nlayer.setRenderer(map.getRenderer());"}],"scope":"instance","type":"MethodDoc","description":"

              Set the TMX renderer for this layer object

              ","params":[{"identifier":"renderer","optional":false,"dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MFFmtfFBOA8AR7dDaZcwz","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

              set new value to the rectangle shape

              ","params":[{"identifier":"x","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the rectangle, or an array of vector defining the rectangle

              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

              height of the rectangle, if a numeral width parameter is specified

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tjUAeS6lLNrbP1sr-kFeU","name":"setTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              assign the given Tile object to the specified position

              ","params":[{"identifier":"tile","optional":false,"description":"

              the tile object to be assigned

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

              x coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y coordinate (in world/pixels coordinates)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the tile object

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k7PqUXCrB97s__QRLgrwz","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the vertices defining this Polygon

              ","params":[{"identifier":"vertices","optional":false,"description":"

              array of vector or vertice defining the Polygon

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

              this instance for objecf chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ul-9BrM-J_AxsfEudJJc3","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the Polygon to the given position vector.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ydvyTF_zK-a7FToScG455","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply a 2d projection to this shapen

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qF0T2ZCkrj7wstORWg41t","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply an isometric projection to this shape

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vlfxT5nYlBZBy5tuXQL1r","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this box.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this rectangle.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3dGePBvkvS_dpGZinMzRn","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

              multiply the renderable currentTransform with the given matrix

              ","params":[{"identifier":"m","optional":false,"description":"

              the transformation matrix

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tYL6VXVrFt6PCKC64wcHD","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              translate the Polygon by the specified offset

              ","params":[{"identifier":"x","description":"

              x offset or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y offset

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2OBldp1N9SxcNtbVgjkZQ","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

              merge this rectangle with another one

              ","params":[{"identifier":"rect","optional":false,"description":"

              other rectangle to union with

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              the union(ed) rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XF-lMqbSIm2ni4JnkCkA7","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

              update function (automatically called by melonJS).

              ","params":[{"identifier":"dt","optional":false,"description":"

              time since the last update in milliseconds.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              true if the renderable is dirty

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PexjDLDP37rTv0psdQ1X3","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              update the bounding box for this shape.

              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

              update the bounds size and position in (world) absolute coordinates

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this shape bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1GHsCa5DCiq1R0ymrJM-9","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

              called when the anchor point value is changed

              ","params":[{"identifier":"x","optional":false,"description":"

              the new X value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the new Y value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"pA6zZd98vYKaMcBeQMwKj","name":"TMXOrthogonalRenderer","brief":"","type":"ClassDoc","description":"

              an Orthogonal Map Renderder

              ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"Gjs_H1PVBo7Kp2-uQnxbq","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the renderer can render the specified map or layer

              ","params":[{"identifier":"component","optional":false,"description":"

              TMX Map or Layer

              ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1Nf0870qNkNFI8ZYWM6Na","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

              the TMX map

              ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"JKIJzKYkFvslipvXnZ6JR","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given tile at the specified layer

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

              X coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

              the tile object to draw

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"E52lFJYxyrAWEz8z6Uqgu","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given TMX Layer for the given area

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

              a TMX Layer object

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

              the area of the layer to draw

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BC1HLLz5v5-ZaQ3EQsnfR","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the bounding rect for this map renderer

              ","params":[{"identifier":"layer","optional":true,"description":"

              calculate the bounding rect for a specific layer (will return a new bounds object)

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jIrMAsy3pMadfKdAOjSE7","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile position corresponding to the specified pixel

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sf0Ste__kWAZFBkzSHtkf","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the pixel position corresponding of the specified tile

              ","params":[{"identifier":"col","optional":false,"description":"

              tile horizontal position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

              tile vertical position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"lB2uNIp8GQoX6iKppu5XD","name":"TMXRenderer","brief":"","type":"ClassDoc","description":"

              The map renderer base class

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"X09DXs9R3FnK4gmSmWmiw","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the renderer can render the specified map or layer

              ","params":[{"identifier":"component","optional":false,"description":"

              TMX Map or Layer

              ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dg5RW2qCWer3HzGqRgywK","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"cols","optional":false,"description":"

              width of the tilemap in tiles

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"rows","optional":false,"description":"

              height of the tilemap in tiles

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tilewidth","optional":false,"description":"

              width of each tile in pixels

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileheight","optional":false,"description":"

              height of each tile in pixels

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"752n8KDud-vknSPi5bmRE","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given tile at the specified layer

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

              X coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

              the tile object to draw

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"p1BYwVu02YKsaObjpr_Yl","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given TMX Layer for the given area

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

              a TMX Layer object

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

              the area of the layer to draw

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7MPnUE9NrRIfEGACSxjDB","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the bounding rect for this map renderer

              ","params":[{"identifier":"layer","optional":true,"description":"

              calculate the bounding rect for a specific layer (will return a new bounds object)

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yw4mXtUX_-UmlRWmExmA6","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile position corresponding to the specified pixel

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"e-oVcMX-T_3M1qT2Zzge5","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the pixel position corresponding of the specified tile

              ","params":[{"identifier":"col","optional":false,"description":"

              tile horizontal position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

              tile vertical position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"d4H8IiKGbyugA1_D2RMXQ","name":"TMXStaggeredRenderer","type":"ClassDoc","description":"

              a Staggered Map Renderder

              ","params":[],"returns":[],"extends":["TMXHexagonalRenderer"],"implements":[],"members":[{"id":"VYoK2MIYtU0jRS0fSyTMM","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the renderer can render the specified map or layer

              ","params":[{"identifier":"component","optional":false,"description":"

              TMX Map or Layer

              ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"G_HaOwIv6AsizZzfr3UvT","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"h_aQ3GuawYf7hPh1-GVfG","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given tile at the specified layer

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

              X coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate where to draw the tile

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

              the tile object to draw

              ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qnEzGKMPh7YZMaGhp6zzm","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

              draw the given TMX Layer for the given area

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

              a TMX Layer object

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

              the area of the layer to draw

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dnE6U_g8fWuhH_ZlDAqRU","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the bounding rect for this map renderer

              ","params":[{"identifier":"layer","optional":true,"description":"

              calculate the bounding rect for a specific layer (will return a new bounds object)

              ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w5yBvf2xKXGPSFapXNAF2","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile position corresponding to the specified pixel

              ","params":[{"identifier":"x","optional":false,"description":"

              X coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YZR29zX41CdSwhttZ4AMy","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the pixel position corresponding of the specified tile

              ","params":[{"identifier":"col","optional":false,"description":"

              tile horizontal position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

              tile vertical position

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional vector object where to put the return values

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"6Zzi3szZCx3jUt23t66ur","name":"TMXTileMap","brief":"","type":"ClassDoc","description":"

              a TMX Tile Map Object\nTiled QT +0.7.x format

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"7wCStDW7NZBOnwSiNz17e","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The map class.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"08gQqbfkO5mPRmIjw9yT3","name":"cols","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              width of the tilemap in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2Cc4pQot4Ug4bnjsEYn77","name":"infinite","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              is the map an infinite map

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kj96ZoTy_m2WhonIUXhwn","name":"name","brief":"","scope":"instance","type":"PropertyDoc","description":"

              name of the tilemap

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KM3MWc0Db5U-7lhzkEXnG","name":"orientation","brief":"","defaultValue":"\"orthogonal\"","scope":"instance","type":"PropertyDoc","description":"

              the map orientation type. melonJS supports “orthogonal”, “isometric”, “staggered” and “hexagonal”.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bs9-e3c8N54qaKWGIz_sx","name":"renderorder","brief":"","defaultValue":"\"right-down\"","scope":"instance","type":"PropertyDoc","description":"

              the order in which tiles on orthogonal tile layers are rendered.\n(valid values are "left-down", "left-up&qu...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1xwrSuKxIpTvpy25-iQKf","name":"rows","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              height of the tilemap in tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jgEj0wmVT91jNdyc3Q11W","name":"tiledversion","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The Tiled version used to save the file (since Tiled 1.0.1).

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"99robX-Czp4_oryjGiA56","name":"tileheight","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              Tile height

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MbMLp_E23fy7gIs5ICJiZ","name":"tilewidth","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

              Tile width

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r5zbYT8KWuOUppm_0AW_d","name":"version","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the TMX format version

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LZB337i1mmYKqUijMDt1P","name":"addTo","brief":"","examples":[{"caption":"","code":"// create a new level object based on the TMX JSON object\nlet level = new me.TMXTileMap(levelId, me.loader.getTMX(levelId));\n// add the level to the game world container\nlevel.addTo(me.game.world, true, true);"}],"scope":"instance","type":"MethodDoc","description":"

              add all the map layers and objects to the given container.\nnote : this will not automatically update the camera viewport

              ","params":[{"identifier":"container","optional":false,"description":"

              target container

              ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"flatten","optional":true,"default":"true","description":"

              if true, flatten all objects into the given container, else a me.Container object will be created for each co...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"setViewportBounds","optional":true,"default":"false","description":"

              if true, set the viewport bounds to the map size, this should be set to true especially if adding a level to the game worl...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"nyoUf7yKbS2ZdPMCCoXrw","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a new level object based on the TMX JSON object\nlet level = new me.TMXTileMap(levelId, me.loader.getTMX(levelId));\n// add the level to the game world container\nlevel.addTo(me.game.world, true);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"levelId","optional":false,"description":"

              name of TMX map

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"data","optional":false,"description":"

              TMX map in JSON format

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"03ahMdyw9f6YBKXYmyCrH","name":"destroy","brief":"

              destroy function, clean all allocated objects

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aEwR_GyFRJEhTO2XnhzJY","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the map bounding rect

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6SrGLnmURJQp8ImJw5Yhi","name":"getLayers","brief":"","scope":"instance","type":"MethodDoc","description":"

              return all the existing layers

              ","params":[],"returns":[{"description":"

              Array of Layers

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ir79Tjw4DBEEuQtXV3K7V","name":"getObjects","brief":"","scope":"instance","type":"MethodDoc","description":"

              return an Array of instantiated objects, based on the map object definition

              ","params":[{"identifier":"flatten","optional":true,"default":"true","description":"

              if true, flatten all objects into the returned array.\nwhen false, a me.Container object will be created for e...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Array of Objects

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"WKFOTF5o68OT5lMqVH2AT","name":"getRenderer","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return the map default renderer

              ","params":[],"returns":[{"description":"

              a TMX renderer

              ","dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"7YqwmTRcjZ4BFDndLkc82","name":"TMXTileset","brief":"","type":"ClassDoc","description":"

              a TMX Tile Set Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"3dFCUfIjWoBzBKzd69i43","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the tileset class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MJ9n3rvPgj4czirLJN6OO","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Tileset contains animated tiles

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KsluiAzd5pLUPaum0jOkx","name":"isCollection","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the tileset is a "Collection of Image" Tileset

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1TT9IJ7-Jlow51JDO0fMy","name":"_lastUpdate","brief":"","access":"private","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

              Remember the last update timestamp to prevent too many animation updates

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qf1VrPJEnHBM0yRwif9jr","name":"animations","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

              Tileset animations

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"juFleIi9Y3P3KvYKqDxjv","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"tileset","optional":false,"description":"

              tileset data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#tileset})

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"v8Afr5Zap-CybJPj-PfGA","name":"contains","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if the gid belongs to the tileset

              ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"i6JCJVwDq4hQMaQu-why5","name":"getTileImage","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tile image from a "Collection of Image" tileset

              ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              corresponding image or undefined

              ","dataType":{"tokens":[{"value":"Image","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jFg6AerkTYg7PNmy-k_36","name":"getTileProperties","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the properties of the specified tile

              ","params":[{"identifier":"tileId","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"sOSaOMz8uDXHEu8629w21","name":"getViewTileId","brief":"","scope":"instance","type":"MethodDoc","description":"

              Get the view (local) tile ID from a GID, with animations applied

              ","params":[{"identifier":"gid","optional":false,"description":"

              Global tile ID

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              View tile ID

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"yiTwPzD6kqiRQSSWz3jrJ","name":"TMXTilesetGroup","brief":"","type":"ClassDoc","description":"

              an object containing all tileset

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Ap514gbsn0T9ptR_1ebpV","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

              add a tileset to the tileset group

              ","params":[{"identifier":"tileset","optional":false,"dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"OkCR92oKdv2gIfaNpqn_6","name":"getTilesetByGid","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tileset corresponding to the specified id
              \nwill throw an exception if no matching tileset is found

              ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              corresponding tileset

              ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3mWVZFonho25TWIx2Ct0N","name":"getTilesetByIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the tileset at the specified index

              ","params":[{"identifier":"i","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              corresponding tileset

              ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"z5Tfk5_NgatmJsmEhWP6v","name":"Trigger","brief":"","type":"ClassDoc","description":"

              trigger an event when colliding with another object

              ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"5vHriCmwN4UIxL30y7Oxa","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

              Define the renderable opacity
              \nSet to zero if you do not wish an object to be drawn

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2wdHMSGTU_ZyCwuDcPlSF","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object will always update, even when outside of the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CmFhdCOpLivJM-BjG8nlW","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              a reference to the parent object that contains this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0XDgCuA9yxG-UliwTggaO","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

              The anchor point is used for attachment behavior, and/or when applying transformations.
              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l4F2rLgXCIoBnnX4O0w3j","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PmTch5N54zQwzgmv9LuLc","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mcORMvcNkM-o_4WAeWM5j","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

              the renderable physic body

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-vlJVW5FfABL5ksLZ_PsR","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nAhqNDJ2Jv6Im3iF4Mjcb","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6-mlaz7PlEy8a_xkM7AYQ","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kcs2V2TtAcMw4BPL4Z8II","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xC_a1WQHFKO1pGfuP-rnr","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dRWFIS6PSksvT59qlPBiW","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CLnO-n4pPZ50FMdEAlMsj","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

              (G)ame (U)nique (Id)entifier"
              \na GUID will be allocated for any renderable object added
              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0iJsTsjn0GfhwuIfadY3P","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eQCIgZU_xK9_WXAIQeFHq","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object is visible and within the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qL0q4uxTJsYaJ_Ej_KJCy","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              when true the renderable will be redrawn during the next update cycle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g6MPit0iDWwbYKnt14PXR","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9xSJb374fkv_XBwLAzWrT","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"osXpAE0t27ZMEwMErO9nX","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tbg6wYGlreqxXYwM1-RYv","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              If true then physic collision and input events will not impact this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Icz7VWBJljEGb4GFk1w2x","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l4ZlDmqxof8JlPGFYjbIK","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eerwf2bW4kNEE-7fjrlN6","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DjfDPZfpeKrFUDU2lzee0","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZmQvwiRUoMVUYsSAgtAAL","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

              an event handler that is called when the renderable leave or enter a camera viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gdpfWQi5RWrDWydD6OOE5","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Array of points defining the Polygon
              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vrm88SRW3SHLmBG9aOOAj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dAHE0dQ4Iikst1DqSOuGP","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jvbujOWMMcS5ZD-jFGPRm","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iyxqTvDKDRsq5gDCGLKBB","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cz-fhYsDEHQkmSucA3Tr0","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zEt7c8Vbt68vPOguYbMGn","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ID-R8w7zz89tbngsdCFp0","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether to update this object when the game is paused.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XAUaXVcOATmVdREEGpTG_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G9nOPSr8KB8c3nGWrgd5B","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YpGQcrl4o-j6hvyS0qiqk","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the rectangle position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tdi7YCzpwdkkfJAbG-byV","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this rectangle

              ","params":[],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kB2gV-LwmnC5XNSJsHaZx","name":"constructor","brief":"","examples":[{"caption":"","code":"world.addChild(new me.Trigger(\n x, y, {\n shapes: [new me.Rect(0, 0, 100, 100)],\n \"duration\" : 250,\n \"color\" : \"#000\",\n \"to\" : \"mymap2\"\n }\n));"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

              the x coordinates of the trigger area

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinates of the trigger area

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.width","optional":true,"description":"

              width of the trigger area

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","optional":true,"description":"

              height of the trigger area

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shapes","optional":true,"description":"

              collision shape(s) that will trigger the event

              ","dataType":{"tokens":[{"value":"Array | Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1<%2> | %3<%4> | %5<%6> | %7<%8>"}},{"identifier":"settings.duration","optional":true,"description":"

              Fade duration (in ms)

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.color","optional":true,"description":"

              Fade color

              ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.event","optional":true,"default":"\"level\"","description":"

              the type of event to trigger (only "level" supported for now)

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.to","optional":true,"description":"

              level to load if level trigger

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.container","optional":true,"description":"

              Target container. See {@link level.load}

              ","dataType":{"tokens":[{"value":"string | Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.onLoaded","optional":true,"description":"

              Level loaded callback. See {@link level.load}

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.flatten","optional":true,"description":"

              Flatten all objects into the target container. See {@link level.load}

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"settings.setViewportBounds","optional":true,"description":"

              Resize the viewport to match the level. See {@link level.load}

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Fz84qoHan4f91IBkq4dCZ","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the rectangle contains the given point or rectangle

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point, or a rectangle to test

              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the rectangle contain the given point or rectangle, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_esmn0h9yxuCJZpe952VF","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              copy the position and size of the given rectangle into this one

              ","params":[{"identifier":"rect","optional":false,"description":"

              Source rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w4sZ1nfkABso_gtBaY1dy","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              distance

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"55256WDonV1hupo6u0PMP","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer instance

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

              the viewport to (re)draw

              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Vc3uKxAT4ePxtgYpFPGMh","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is identical to the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if equals

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ae7BPDVLNo7aqoMx0sKft","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

              flip the renderable on the horizontal axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Jv5KFHgi9gliYs0TxHGYp","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

              flip the renderable on the vertical axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sq_m7zvhr1JVRD8aH-F6i","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the renderable absolute position in the game world

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2hbD-GZjRKIERTXdgG_S2","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the bounding box for this renderable

              ","params":[],"returns":[{"description":"

              bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_9J5vvde4IFnR_i4BvLQ6","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns a list of indices for all triangles defined in this polygon

              ","params":[],"returns":[{"description":"

              an array of vertex indices for all triangles forming this polygon.

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"usgCZ_zrJG15bI8KjAayM","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the renderable alpha channel value

              ","params":[],"returns":[{"description":"

              current opacity value between 0 and 1

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8bJj1uFHb2mUZhN6_3CRI","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

              ","params":[],"returns":[{"description":"

              true if the vertices are convex, false if not, null if not computable

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-DsfB_FhIVQHz9rHsQuwi","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this rectangle are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"lp_pubpH3wuQwL0qkJj5Q","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable towards the given target.

              ","params":[{"identifier":"target","optional":false,"description":"

              the renderable or position to look at

              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BUxMNKKGnYZJT6CExWd6y","name":"onCollision","brief":"","scope":"instance","type":"MethodDoc","description":"

              onCollision callback, triggered in case of collision with this trigger

              ","params":[{"identifier":"response","optional":false,"description":"

              the collision response object

              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

              the other renderable touching this one (a reference to response.a or response.b)

              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

              true if the object should respond to the collision (its position and velocity will be corrected)

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"bo6ZzLKy9xaifAoUD_BaK","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"brhe0XsHqMafThRE4EKaq","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is intersecting with the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Q5wa5UTS95D3_D-NL8qkI","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

              restore the rendering context after drawing (automatically called by melonJS).

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"LC-gKP-Vx1o-Z88tVqLXl","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"YM-HIGxFkKqlXQVAUdquT","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-VEsKwODSUWVkRde7hOev","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resize the rectangle

              ","params":[{"identifier":"w","optional":false,"description":"

              new width of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              new height of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1MswuRj98NWilZu5saCUz","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A7f3xY-bzOVVQbKVc8YAo","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

              a number representing the abscissa of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

              a number representing the ordinate of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lkb9FPF1lC_rhPtN6zXXz","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point

              ","params":[{"identifier":"v","optional":false,"description":"

              scaling vector

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mAqmGT-Gc7Px6CTJeFtTK","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the renderable alpha channel value

              ","params":[{"identifier":"alpha","optional":false,"description":"

              opacity value between 0.0 and 1.0

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Vjvji_1ZlY-wJidIM--jl","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

              set new value to the rectangle shape

              ","params":[{"identifier":"x","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the rectangle, or an array of vector defining the rectangle

              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

              height of the rectangle, if a numeral width parameter is specified

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JwL48X27-1Y5eybTyboL4","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the vertices defining this Polygon

              ","params":[{"identifier":"vertices","optional":false,"description":"

              array of vector or vertice defining the Polygon

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

              this instance for objecf chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"57WqXGIe0WQGFQKwcCeco","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the Polygon to the given position vector.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"t035O4NOED6VQXx87xSyc","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply a 2d projection to this shapen

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I-FXM020oo_txi4BoXi1g","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply an isometric projection to this shape

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MA7CE29VeRwDFQFx_SGTA","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this box.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this rectangle.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ASQeHw_kCTW8QjGcElYsQ","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

              multiply the renderable currentTransform with the given matrix

              ","params":[{"identifier":"m","optional":false,"description":"

              the transformation matrix

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DbAw-C_wJikcodIxXMWga","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              translate the Polygon by the specified offset

              ","params":[{"identifier":"x","description":"

              x offset or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y offset

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wq6bVCg3UBNO3CggCQZT6","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

              merge this rectangle with another one

              ","params":[{"identifier":"rect","optional":false,"description":"

              other rectangle to union with

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              the union(ed) rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eW_tLoBMJdU2FA2F27Izi","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

              update function (automatically called by melonJS).

              ","params":[{"identifier":"dt","optional":false,"description":"

              time since the last update in milliseconds.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              true if the renderable is dirty

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"wKoNZBnJB8lVO85e5z1rF","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              update the bounding box for this shape.

              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

              update the bounds size and position in (world) absolute coordinates

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this shape bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hmYjcaenVLRwi7-219TYX","name":"triggerEvent","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              trigger this event

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L0CUehi2gGzTzPvF_5U0v","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

              called when the anchor point value is changed

              ","params":[{"identifier":"x","optional":false,"description":"

              the new X value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the new Y value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"l7F3Ura6YDNemAjGTOu7z","name":"Tween","brief":"","type":"ClassDoc","description":"

              Javascript Tweening Engine

              \nSuper simple, fast and easy to use tweening engine which incorporates optimised Robert Penne...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Jv9ABaUH2d_Xc-YkgHPjn","name":"Easing","brief":"","access":"public","type":"EnumDoc","description":"

              Easing Function :

              \n

              \n Easing.Linear.None
              \n Easing.Quadratic.In
              \n Easing.Quadratic.Out
              \n Easing.Quadrati...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7YWJZG048YQkw2Fz7bMvM","name":"Interpolation","brief":"","access":"public","type":"EnumDoc","description":"

              Interpolation Function :

              \n

              \n Interpolation.Linear
              \n Interpolation.Bezier
              \n Interpolation.CatmullRom\n

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3ZofCXPNSYUuUn6PC7BC3","name":"chain","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              chain the tween

              ","params":[{"identifier":"chainedTween","description":"

              Tween(s) to be chained

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"r5EKrndUURdEPSuzQdwyd","name":"constructor","brief":"","examples":[{"caption":"","code":"// add a tween to change the object pos.x and pos.y variable to 200 in 3 seconds\ntween = new me.Tween(myObject.pos).to({\n x: 200,\n y: 200,\n }, {\n duration: 3000,\n easing: me.Tween.Easing.Bounce.Out,\n autoStart : true\n}).onComplete(myFunc);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"object","optional":false,"description":"

              object on which to apply the tween

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"XcZ1AOysxSDsaN2Ix5ACU","name":"delay","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              delay the tween

              ","params":[{"identifier":"amount","optional":false,"description":"

              delay amount expressed in milliseconds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SFwYf21p2Xmr7OZbxRUvE","name":"easing","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              set the easing function

              ","params":[{"identifier":"easing","optional":false,"description":"

              easing function

              ","dataType":{"tokens":[{"value":"Tween.Easing","kind":"canonical"},{"value":"Easing","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YimU-v-FJr1xN6zlUmfv5","name":"interpolation","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              set the interpolation function

              ","params":[{"identifier":"interpolation","optional":false,"description":"

              interpolation function

              ","dataType":{"tokens":[{"value":"Tween.Interpolation","kind":"canonical"},{"value":"Interpolation","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gl3yPfXjx-ahxEgpMZLTM","name":"onComplete","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              onComplete callback

              ","params":[{"identifier":"onCompleteCallback","optional":false,"description":"

              callback

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l9xUDQmJHqbxE8AYZLyO1","name":"onStart","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              onStart callback

              ","params":[{"identifier":"onStartCallback","optional":false,"description":"

              callback

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EnO4e8GVucbKg69Yj7bOm","name":"onUpdate","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              onUpdate callback

              ","params":[{"identifier":"onUpdateCallback","optional":false,"description":"

              callback

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iByWRBFlchN189wZlICaL","name":"repeat","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              Repeat the tween

              ","params":[{"identifier":"times","optional":false,"description":"

              amount of times the tween should be repeated

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7sbe3lyopR4KeQ56YmAVp","name":"start","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              start the tween

              ","params":[{"identifier":"time","optional":true,"description":"

              the current time when the tween was started

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wnhDUcVz7wDZgcUaCQL1V","name":"stop","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              stop the tween

              ","params":[],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6gIgztHcSYnkk2K7qTSbK","name":"to","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

              object properties to be updated and duration

              ","params":[{"identifier":"properties","optional":false,"description":"

              hash of properties

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options","optional":true,"description":"

              object of tween properties, or a duration if a numeric value is passed

              ","dataType":{"tokens":[{"value":"object | number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"object | %1"}},{"identifier":"options.duration","optional":true,"description":"

              tween duration

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.easing","optional":true,"description":"

              easing function

              ","dataType":{"tokens":[{"value":"Tween.Easing","kind":"canonical"},{"value":"Easing","kind":"link"}],"template":"%1"}},{"identifier":"options.delay","optional":true,"description":"

              delay amount expressed in milliseconds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.yoyo","optional":true,"description":"

              allows the tween to bounce back to their original value when finished. To be used together with repeat to create endless l...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"options.repeat","optional":true,"description":"

              amount of times the tween should be repeated

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.interpolation","optional":true,"description":"

              interpolation function

              ","dataType":{"tokens":[{"value":"Tween.Interpolation","kind":"canonical"},{"value":"Interpolation","kind":"link"}],"template":"%1"}},{"identifier":"options.autoStart","optional":true,"description":"

              allow this tween to start automatically. Otherwise call me.Tween.start().

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mjM8YASCoyQKVzG3JFkSG","name":"yoyo","brief":"","access":"public","scope":"instance","see":["Tween#repeat"],"type":"MethodDoc","description":"

              Allows the tween to bounce back to their original value when finished.\nTo be used together with repeat to create endless l...","params":[{"identifier":"yoyo","optional":false,"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this instance for object chaining

              ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"pBxbsmZgkCHE6SXfOti5m","name":"UIBaseElement","brief":"","type":"ClassDoc","description":"

              This is a basic clickable and draggable container which you can use in your game UI.\nUse this for example if you want to d...","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"8ioBGIZ19EzcVxU1Ye-V7","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

              Define the renderable opacity
              \nSet to zero if you do not wish an object to be drawn

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uBgPSwR8wguMjrS-hKqYR","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object will always update, even when outside of the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zvlVueN1jWmXp-ARfwZEs","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              a reference to the parent object that contains this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GtIC0-Bx7fHjS7kZwrSKO","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

              The anchor point is used for attachment behavior, and/or when applying transformations.
              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3GLCr8hJfpZlJeWkZere7","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              Specify if the children z index should automatically be managed by the parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k9CmKNcq5JuLV-YTZYOhr","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              Specify if the children list should be automatically sorted when adding a new child

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YkgM1CvGLsOTpzjFc-u5X","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hj7gcCA4y9G2X998SGIxy","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a background color for this container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j8YXxZmMsFOZmcgxJAy-f","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v4JvJR4W90r8EvjaOCMUs","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

              the renderable physic body

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2ie4JPL-S1NNfH77woxaz","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d6mAZew7fXwyYLExK_3kT","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qTP1SQ9EqmsJdBpM9Ugr5","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UjhzMtH2FKQPU7SEqUyMV","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Specify if the container draw operation should clip his children to its own bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k6aSh_0MNAl7owRxyudLt","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n-d3k9ix5pxmxyRvRpoRY","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qMrBhNZ-tkgeGGDsJeh-Z","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MZgJ9_bITUiG5Cs4ENJQ_","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

              UI base elements use screen coordinates by default\n(Note: any child elements added to a UIBaseElement should have their fl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qy9jB95xDc5kgA2b13yim","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

              (G)ame (U)nique (Id)entifier"
              \na GUID will be allocated for any renderable object added
              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EvL1H5ca3Uit8ZL_awA7O","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F8Ip8y_eoKaNNhrVEykXJ","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3gT2aMqceEzNoNds-z1G","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wq2FSt5_P0mPf6G8n0Djy","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object is visible and within the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kVHuU5FlANLOWdu5yjtgs","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"r89L1zV2unLeHYFqxxros","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              when true the renderable will be redrawn during the next update cycle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-aCs-O85Qa2O9s6CUugZf","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GvOtSTOo3GMPWPXAwq54j","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UK9JTBjnCO2D8jwHXWXA1","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8QoXHBpxIDVr17yjN2wLV","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NzAmrPaAQqWW7aQCWdTpM","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X8w4Uuvw-Q8NJONUyrx3o","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              If true then physic collision and input events will not impact this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8vTKNL0KRXF6sNE8KlYlb","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gei3EOFYFm00QuTMztaxN","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2Xx9y6cMkJYW3SUsMNDzH","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iADVCxNloI37tUdVe0TRZ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kXaiOBR5un_OvvhLYo3cx","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

              an event handler that is called when the renderable leave or enter a camera viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_FZha4Z9t3Y3uSRJwhosL","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Array of points defining the Polygon
              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SoLhV9fzrMwwsEBTmNiCS","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vGYmahcOo7R1iTijmJleg","name":"released","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              false if the pointer is down, or true when the pointer status is up

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uAfM8h_3oCDUsA61E5sRa","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F1t7DtyVztb8ilHLVkvh1","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              whether the container is the root of the scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VLfPIszrf7xT6K-haKkD6","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aef-sKQ26XQSNrBQS7ro7","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

              The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B3r4VtyZW8gbmshPG94RA","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZcYfrpzDvAmlN6lZwBMqs","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vZ6tc_oiem_XbtUAa4mAA","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VbhsjP03xBu98rtWZEZnu","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether to update this object when the game is paused.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TY0nzkfpmdWGkx4xCg_yA","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rJDwYGrQ4qyzpJYa8M0AW","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add a child to the container
              \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

              forces the z index of the child to the specified value

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the added child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"meR9yy5QUjs0Zmj1XFWoS","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add a child to the container at the specified index
              \n(the list won't be sorted after insertion)

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

              The index at which to insert the child

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the added child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IdkZwdgjOvUNVFvV0VoXZ","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uapSOLLX3NzBE4w07SC2g","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the rectangle position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CNe-Pl4_HZCR_ENHRnUUc","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this rectangle

              ","params":[],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YGyHlV01kd3nAQLb2JM98","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

              The x position of the container

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              The y position of the container

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the container

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              height of the container

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rAxlJ8BbMboL_R_lcgzkv","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the rectangle contains the given point or rectangle

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point, or a rectangle to test

              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the rectangle contain the given point or rectangle, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dayHOcvVzqpQ0lAS-ACvV","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              copy the position and size of the given rectangle into this one

              ","params":[{"identifier":"rect","optional":false,"description":"

              Source rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Lz_XtWwVLm_Fqkl2SEfRY","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              distance

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NGtq_YagFjrktWu8NuHoM","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is identical to the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if equals

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"BTgPgPbLUzyaor3R6w0Bs","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

              flip the renderable on the horizontal axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7o7AN0wQIpjSWKuPSKKmO","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

              flip the renderable on the vertical axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JnJg7qXveC_0HOJvVempT","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

              The forEach() method executes a provided function once per child element.
              \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

              fnction to execute on each element

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

              value to use as this(i.e reference Object) when executing callback.

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"2jYjAi3voJU2S3-lTeVpx","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the renderable absolute position in the game world

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"syWjDS9W5XbaUsbYEJYaN","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the bounding box for this renderable

              ","params":[],"returns":[{"description":"

              bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GlQy6jeysK_lP5xn2XuKH","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the Child at the specified index

              ","params":[{"identifier":"index","optional":false,"description":"

              The index of the child

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the child at the specified index

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m4a2NCpp3maKeE8A79ByJ","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the child corresponding to the specified GUID
              \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

              child GUID

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              corresponding child or null

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P4o667dAqTCmk2GfWoGBB","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the list of childs with the specified name
              \nas defined in Tiled (Name field of the Object Properties)
              \nnote ...","params":[{"identifier":"name","optional":false,"description":"

              child name

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              Array of children

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"FP_tEbtl_TFT9wN8pTyk-","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

              return the child corresponding to the given property and value.
              \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

              Property name

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

              Value of the property

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              Array of childs

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"VozxslDCEN1iAP592Zh6M","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the list of childs with the specified class type

              ","params":[{"identifier":"classType","optional":false,"description":"

              Class type

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

              Array of children

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"5nlwr8Y_WqOjjTaACwrqo","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the index of the given Child

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

              index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P9dwPUVZu4VAlir9oOIin","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

              return all child in this container

              ","params":[],"returns":[{"description":"

              an array of renderable object

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"NY67ODQ_4BUkBWxUjV-7N","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns a list of indices for all triangles defined in this polygon

              ","params":[],"returns":[{"description":"

              an array of vertex indices for all triangles forming this polygon.

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"2tvQbRwY1JSPj32dBs4V3","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the next child within the container or undefined if none

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

              child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2mud4ZX0ZthN9hlN4J0G8","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the renderable alpha channel value

              ","params":[],"returns":[{"description":"

              current opacity value between 0 and 1

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sG0MovQXCDe7Ezojzc-NN","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the instance of the root container (i.e. the current application World container).

              ","params":[],"returns":[{"description":"

              root container

              ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wTx6QLr-UOgCYMzd43LDf","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if contains the specified Child

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tV2exvO9xISTkIZ8fefOm","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

              Checks if this container is root or if it's attached to the root container.

              ","params":[],"returns":[{"description":"

              true if this container is root or if it's attached to the root container

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"xbpgMOm4qlY01a4KjgQ8f","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

              ","params":[],"returns":[{"description":"

              true if the vertices are convex, false if not, null if not computable

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ogPYP9MemZ2CbihMkMkk9","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this rectangle are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"zEfiMJgacB_n2M3kZBz-l","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable towards the given target.

              ","params":[{"identifier":"target","optional":false,"description":"

              the renderable or position to look at

              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"flAPBPc_zfF8P_lXyxyGh","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the child in the group one step backward (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"WLZLKBInUstycXTT-xWuC","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the specified child the bottom (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"FXWt2uNFovmEhryTE3qpv","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the specified child to the top(z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"XY6LZPUEcDarVz1eNhFfP","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the child in the group one step forward (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"gKsKqScTTsb98mhLbsJuA","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

              a callback to be extended, triggered after a child has been added or removed

              ","params":[{"identifier":"index","optional":false,"description":"

              added or removed child index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9aZvvx14EjjOyzWUarg8C","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed (to be extended)

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"icfDDJ84c3Cdkn3EWxRet","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

              onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

              ","params":[{"identifier":"response","optional":false,"description":"

              the collision response object

              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

              the other renderable touching this one (a reference to response.a or response.b)

              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

              true if the object should respond to the collision (its position and velocity will be corrected)

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"VL4t-8V8Mfy90H7FFydS1","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"acqeWvKIIBJvQfjmOps_j","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and held
              \nto be extended

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NdsnMbJj4PLOXXUxgb1qI","name":"onMove","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is moved over the object

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"93SfTrhsgJF6yb2PCcKrV","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is leaving the object area

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"T5ff_0PQp9Mxw7SVCMrIy","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is over the object

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mEbawVfR2l1GY5mLVyp1p","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and released (to be extended)

              ","params":[],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"00Rz2WIk_v0wAOZOdqMO4","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is intersecting with the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ff5gmNLq_bu0a__bwzLsx","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

              restore the rendering context after drawing (automatically called by melonJS).

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"FKTRrhpVaEV_HLEpgzNgj","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"aQQXeHlSTy4Lxbu7y9aQa","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XCVGHycvtzZUzVWmR0oOR","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

              Child to be removed

              ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

              true to prevent calling child.destroy()

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"P0NOm3O2SyBVuR7YorQxP","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

              Removes (and optionally destroys) a child from the container.
              \n(removal is immediate and unconditional)
              \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

              Child to be removed

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

              True to prevent calling child.destroy()

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"czcZ-DMZpQiW_2ALWtSjV","name":"reset","brief":"

              reset the container, removing all childrens, and reseting transforms.

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E8NzpqlQwsoDn0XpnJflr","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resize the rectangle

              ","params":[{"identifier":"w","optional":false,"description":"

              new width of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              new height of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8Zm0T4lTfJ34yS21rM1wm","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v97fgGrjMtG8ulsSXR8zM","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

              a number representing the abscissa of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

              a number representing the ordinate of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BgE4AWW4BniWNn0FUh0Ra","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point

              ","params":[{"identifier":"v","optional":false,"description":"

              scaling vector

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mLPIx0Duu25zsZvlb2VQI","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

              Automatically set the specified property of all childs to the given value

              ","params":[{"identifier":"prop","optional":false,"description":"

              property name

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

              property value

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

              recursively apply the value to child containers if true

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"gkZbwONA0cUdb7k_fx0Cw","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the renderable alpha channel value

              ","params":[{"identifier":"alpha","optional":false,"description":"

              opacity value between 0.0 and 1.0

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NMwG8GDfR7oF8_WvJYUwq","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

              set new value to the rectangle shape

              ","params":[{"identifier":"x","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the rectangle, or an array of vector defining the rectangle

              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

              height of the rectangle, if a numeral width parameter is specified

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k7bZxjSBwMCUB_7C-a69S","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the vertices defining this Polygon

              ","params":[{"identifier":"vertices","optional":false,"description":"

              array of vector or vertice defining the Polygon

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

              this instance for objecf chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g1yunionHHOeK73I29WDH","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the Polygon to the given position vector.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iHkalzZxdMohvs-8AFEVB","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

              Manually trigger the sort of all the childs in the container

              ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

              recursively sort all containers if true

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"IbSaIi1aSAEM4fuO79NdV","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

              Swaps the position (z-index) of 2 children

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"zvI3JDPOr2PjSUFn9HO67","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply a 2d projection to this shapen

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AgaiLKJeKIfdUmSJT_24E","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply an isometric projection to this shape

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"keTvkLCY2yWXODmZUCRUW","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this box.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this rectangle.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RBcDrzIfb_Sg-RwtXCW-5","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

              multiply the renderable currentTransform with the given matrix

              ","params":[{"identifier":"m","optional":false,"description":"

              the transformation matrix

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1UMKro2E6UrY2xb2gtMJ6","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              translate the Polygon by the specified offset

              ","params":[{"identifier":"x","description":"

              x offset or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y offset

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x0P4zEZjegputwUP-Flqi","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

              merge this rectangle with another one

              ","params":[{"identifier":"rect","optional":false,"description":"

              other rectangle to union with

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              the union(ed) rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UhjetAa_TQ6Fp8QppQ2lH","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              update the bounding box for this container.

              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

              update the bounds size and position in (world) absolute coordinates

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this container bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"C8cPnCIiY392lFn0GOB2F","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              draw this renderable (automatically called by melonJS)

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer instance

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

              the viewport to (re)draw

              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"XsK1DDKcJdZI9KcEoBah8","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              container update function.
              \nautomatically called by the application update loop {@link Application}

              ","params":[{"identifier":"dt","optional":false,"description":"

              time since the last update in milliseconds.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              true if the Container is dirty

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0WKD4NB_jDOm6q3eFWWmN","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

              called when the anchor point value is changed

              ","params":[{"identifier":"x","optional":false,"description":"

              the new X value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the new Y value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"nx8X_OzpGqteKl-BHn3ZN","name":"UISpriteElement","brief":"","type":"ClassDoc","description":"

              This is a basic sprite based button which you can use in your Game UI.

              ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"_rMezdhiB8VlN58qyrPC0","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

              Define the renderable opacity
              \nSet to zero if you do not wish an object to be drawn

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BS4i98zfQkOZN0p8GrG0v","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object will always update, even when outside of the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"205kI3fGiqsdu2kjwws3n","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              a reference to the parent object that contains this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cxag1emxMJ7SFkSQrWkb1","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

              The anchor point is used for attachment behavior, and/or when applying transformations.
              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Z3r4ahzbSyDQvHgWXWCt","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              pause and resume animation

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UgobldpgkWQxuuEuaU0-R","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

              animation cycling speed (delay between frame in ms)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i3kZyBKS5uDXakAwtNVgy","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OGBHnQRVEuJdC5Nl9fEbv","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7jh5zZg5nZI4cCg1gRZQh","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

              the renderable physic body

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t2YSrBdBBnfbrbAugP7i4","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tJCZWgEQ_MBLY1KvMUl8h","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-iKhquL65XlqdEi-wYRol","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hTFsRX2mvqNLDrYKBgCDJ","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YbP47AfbJyGDOj7FgM2K_","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tFcMin0kMvnpBJJ9kq5FB","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

              if this UISpriteElement should use screen coordinates or local coordinates\n(Note: any UISpriteElement elements added to a ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MkjCtIVniwC1EQqcuN_8P","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

              (G)ame (U)nique (Id)entifier"
              \na GUID will be allocated for any renderable object added
              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QIIw9C6_d-KNG33KZURNi","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i1q-wGq3ayHJtwTYEGiTO","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sQR9E5IHBq9eNnv2_zXZN","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h37J6LA_x5nZG4yjbNkGR","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object is visible and within the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d4JxM0isIEGsBxZpKrM5h","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PNAgVvgy5-Ur0oWj0q4FB","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              when true the renderable will be redrawn during the next update cycle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kQBce9cezdk1qiFMFik42","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_RrqqZePnbrkTD3PTXTgd","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ms_K6sYYE_ynnatdO1h-W","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JtCSSEXnSR9HbB7EyoMUG","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pQtPDMtLJHXFFGaQpf7-F","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              If true then physic collision and input events will not impact this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B4VC5aeUOYgfBW-YrHRZO","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"prSFMBMObcGL7ss6lWs1v","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BCcmgCBZQ9RTSchXen6Vx","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Sxu2NV8WiWSlInG0ENbAW","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7dTX07jgtes0p1I0eXy6g","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

              global offset for the position to draw from on the source image.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ormAuS23MwbEIhFZXDVVP","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

              an event handler that is called when the renderable leave or enter a camera viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uwjgmT9KavrYFNq0dkzUg","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Array of points defining the Polygon
              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1WKDSGDxk06GRgc2iTD4S","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q9OUomC_HmlQR__i8vs9L","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MPB2SZYpjHbO4MsXIqbBp","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Wkf53w-MsVTu0fXZAMtCQ","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              The source texture object this sprite object is using

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QPoxq85HayRT-JwtHhvHt","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O2c70fxNdr-rnsTU0_W6r","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hjO-l28AhKtu5EgiyLaLS","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_NMAqahxg_GTzEroplOv3","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether to update this object when the game is paused.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A5lm5GQRT6ANQZ7_BP9M_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MXmhyb69S6tYQW7WAdxhs","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

              add an animation
              \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

              animation id

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

              list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

              ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

              cycling speed for animation in ms

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              frame amount of frame added to the animation (delay between each frame).

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fIYFZMQOFaJCgd-c4e_0-","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ljBB7-ti9GC08-e2BIW8a","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the rectangle position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VRCF1qUnPGfzc4pjiDPH1","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this rectangle

              ","params":[],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2-KY8yV8fWvVT6WI25Cjg","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a basic GUI Object\n class myButton extends UISpriteElement {\n constructor(x, y) {\n // call the UISpriteElement parent constructor\n super(x, y, {\n image: \"button\",\n framewidth: 100,\n frameheight: 50\n });\n }\n\n // output something in the console\n // when the object is clicked\n onClick(event) {\n console.log(\"clicked!\");\n // don't propagate the event\n return false;\n }\n });\n\n // add the object at pos (10,10)\n world.addChild(new myButton(10,10));"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate of the UISpriteElement Object

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate of the UISpriteElement Object

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

              See {@link Sprite}

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"LA8gQuviJJFN2j4NZ9hOw","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the rectangle contains the given point or rectangle

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point, or a rectangle to test

              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the rectangle contain the given point or rectangle, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ukoe8irLS2mHusDel2a3w","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              copy the position and size of the given rectangle into this one

              ","params":[{"identifier":"rect","optional":false,"description":"

              Source rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l0KV3kLjbMKBRPOyQybiI","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              distance

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sbX2Uq2xqyCnYKpmfPvJX","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is identical to the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if equals

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7gbdHVKiOoXa1W2qcbSrg","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

              make the object flicker

              ","params":[{"identifier":"duration","optional":false,"description":"

              expressed in milliseconds

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

              Function to call when flickering ends

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_8W_NeF0AAWpfKVA5HQQF","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

              flip the renderable on the horizontal axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P9oFWE2BhVLUzPDh66ht3","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

              flip the renderable on the vertical axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OxCMzlXxlNn6pzFDP1Ggl","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the renderable absolute position in the game world

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4cecW_gCk_GTDSTpLr_j3","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the bounding box for this renderable

              ","params":[],"returns":[{"description":"

              bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UStfOkrIBtkLMun7u4Xyj","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the current animation frame index.

              ","params":[],"returns":[{"description":"

              current animation frame index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fag9luQpyohvfpI3nrgcG","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns a list of indices for all triangles defined in this polygon

              ","params":[],"returns":[{"description":"

              an array of vertex indices for all triangles forming this polygon.

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"NjuiJ8updU-brSwP_w_Ea","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the renderable alpha channel value

              ","params":[],"returns":[{"description":"

              current opacity value between 0 and 1

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YUzvp3ID9XkCN4IQw-G9Z","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

              ","params":[],"returns":[{"description":"

              true if the vertices are convex, false if not, null if not computable

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"cfntu1s5Alwt9-k7fmKll","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

              return true if the specified animation is the current one.

              ","params":[{"identifier":"name","optional":false,"description":"

              animation id

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dZ3yT37I4Y7gHbHKtM0xc","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this rectangle are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Fm58zvLG0XjSOB5yZqT3r","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the flickering state of the object

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"lcVTY2752joFu95HuR982","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable towards the given target.

              ","params":[{"identifier":"target","optional":false,"description":"

              the renderable or position to look at

              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1JyCNMjZEWzLeLuTbnA1a","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed (to be extended)

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"yZZX5xaBIzq_I3kOEdsI8","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

              onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

              ","params":[{"identifier":"response","optional":false,"description":"

              the collision response object

              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

              the other renderable touching this one (a reference to response.a or response.b)

              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

              true if the object should respond to the collision (its position and velocity will be corrected)

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"KJadK8qL2Uq1caQo22vs6","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TPe6izFMaOaOXcu0RJfrX","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and held
              \nto be extended

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qYMj36VoNkrOof-KSC80v","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is leaving the object area

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"piMvKGMJGxtY58ScvB5fv","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is over the object

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"no-G4iRLpaXla_W-al37d","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and released (to be extended)

              ","params":[],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"H3zaGqAGZasNz77vQNtqT","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is intersecting with the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CkRZ0rIQ9nXdn7cLT0nW0","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

              restore the rendering context after drawing (automatically called by melonJS).

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"uQtuUrJEJ_62L_Nznb3fX","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"gZ7qan-p-BT32PEUIS6rq","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mNleIidADh9C6yTlOKULX","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resize the rectangle

              ","params":[{"identifier":"w","optional":false,"description":"

              new width of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              new height of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_NW-cgpC2L0h_l0Lm88F7","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

              reverse the given or current animation if none is specified

              ","params":[{"identifier":"name","optional":true,"description":"

              animation id

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YN9xWSfDb769GqJveZSfV","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CvXqXuuhOcmOCp9R6s2GD","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

              a number representing the abscissa of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

              a number representing the ordinate of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TcBasmXKwaIIe5pmKJ0u1","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point

              ","params":[{"identifier":"v","optional":false,"description":"

              scaling vector

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Id-i78mHZE3TyFsmR9P6z","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

              force the current animation frame index.

              ","params":[{"identifier":"index","optional":true,"default":"0","description":"

              animation frame index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TZ-qAgiz3hcuR89PRJEw2","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

              set the current animation\nthis will always change the animation & set the frame to zero

              ","params":[{"identifier":"name","optional":false,"description":"

              animation id

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

              animation id to switch to when complete, or callback

              ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

              if false will reset the elapsed time counter since last frame

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fadkrz3k92idusOOZ5LhU","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the renderable alpha channel value

              ","params":[{"identifier":"alpha","optional":false,"description":"

              opacity value between 0.0 and 1.0

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8sxwx3I7YlAFTllXMzQHn","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

              change the current texture atlas region for this sprite

              ","params":[{"identifier":"region","optional":false,"description":"

              typically returned through me.Texture.getRegion()

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wbcmavFHA08ZADebn82M0","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

              set new value to the rectangle shape

              ","params":[{"identifier":"x","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the rectangle, or an array of vector defining the rectangle

              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

              height of the rectangle, if a numeral width parameter is specified

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uKnZhNfnwgE65iMScFRpQ","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the vertices defining this Polygon

              ","params":[{"identifier":"vertices","optional":false,"description":"

              array of vector or vertice defining the Polygon

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

              this instance for objecf chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6kcwuFKLTlw_R0T6R--7F","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the Polygon to the given position vector.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CjrH7HOE_KczwCiLqtJkD","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply a 2d projection to this shapen

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hEanJEtMQ3ivjm4uRcEF3","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply an isometric projection to this shape

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eHn7f6YrwjB74L10vSvTz","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this box.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this rectangle.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5XwfSY5gs-TW9U-L7-sfy","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

              multiply the renderable currentTransform with the given matrix

              ","params":[{"identifier":"m","optional":false,"description":"

              the transformation matrix

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2qk73qwP6MjqHGOnF72qp","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              translate the Polygon by the specified offset

              ","params":[{"identifier":"x","description":"

              x offset or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y offset

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fiWD2SSPiq-hO9fBuJF5q","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

              merge this rectangle with another one

              ","params":[{"identifier":"rect","optional":false,"description":"

              other rectangle to union with

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              the union(ed) rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bqJQTFHpoBP6IX8cayzRV","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              update the bounding box for this shape.

              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

              update the bounds size and position in (world) absolute coordinates

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this shape bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p4Ks0TOuceJw273W3HtEA","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              draw this srite (automatically called by melonJS)

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer instance

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

              the viewport to (re)draw

              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Pa6EhXB4RzvwpDW5jBE9x","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              update function.
              \nautomatically called by the game manager {@link game}

              ","params":[{"identifier":"dt","optional":false,"description":"

              time since the last update in milliseconds.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              true if the Sprite is dirty

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FF3fGvHr7GxJFxp0gw2nN","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

              called when the anchor point value is changed

              ","params":[{"identifier":"x","optional":false,"description":"

              the new X value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the new Y value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"xV9D3eEDVjv5BLNy3Fwbj","name":"UITextButton","brief":"","type":"ClassDoc","description":"

              This is a basic base text button which you can use in your Game UI.

              ","params":[],"returns":[],"extends":["UIBaseElement"],"implements":[],"members":[{"id":"MJIppnuKrNsQcdq3xDHmw","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

              Define the renderable opacity
              \nSet to zero if you do not wish an object to be drawn

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k7HAKc45CtqisiL1gmv5W","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object will always update, even when outside of the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YTzsQmcRnfgSqRQlV0Izb","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              a reference to the parent object that contains this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gL3TR9JR3eYwK5BH-Nrc-","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

              The anchor point is used for attachment behavior, and/or when applying transformations.
              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v8nUvmvtdOL6lHvCyR8pN","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              Specify if the children z index should automatically be managed by the parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hIAJwBK9WlUHGEXpjyFNM","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              Specify if the children list should be automatically sorted when adding a new child

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EpgpsHjW1jeYfVDnxOUBI","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rdH-4y_Gmj6xjQ9Y4JqM8","name":"backgroundColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The css value of a background color

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ICK8Y9XZiVj_qLeTm5Lpy","name":"bindKey","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The key to bind the action to

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3IN4b6zu4wwUha4-H_5p0","name":"bitmapText","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the bitmapText used by the UITextButton class

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tuY0KkZEfYAHozO1f_-Qz","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8SHlyIMZub6wh73NFdrTB","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

              the renderable physic body

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4E-jynRSZCP0JJmoKgj4M","name":"borderStrokeColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The css value of a color to be used to draw the border

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EUtI9i12xCixJo2OTW1IY","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

              bottom coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xm5hF6Irz0-VIb5_MFjlA","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6b90PkEI67siVSR4dmltF","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

              absolute center of this rectangle on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"koS7HgByKjAt90E0k5Lds","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Specify if the container draw operation should clip his children to its own bounds

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"82SHtLyKxZAt960hHhbc9","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the renderable default transformation matrix

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Sfw4viCdhbB4zRKv4jr91","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the depth of this renderable on the z axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l7zqWgMpFMzWT8jhP7mNd","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mIEnj8A5QMdJVxaK6N86U","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

              UI base elements use screen coordinates by default\n(Note: any child elements added to a UIBaseElement should have their fl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YNYsL-4Om8jgRaCnP_yA-","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

              (G)ame (U)nique (Id)entifier"
              \na GUID will be allocated for any renderable object added
              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iAwahQB5-Nkk-FhZz0lzo","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              height of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M3c-ZxIRDhvw7P3ICJO5i","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

              Tap and hold threshold timeout in ms

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8wp7JYtzbFnqAMcM9ahWt","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              true if the pointer is over the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dp9ULK0EotBf9aqr961ku","name":"hoverColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The css value of a color to be used if the pointer hovers over the button

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2QRiPec8DIsF8dTV4_RRN","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether the renderable object is visible and within the viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oj70dMhrtXE3q64LerccD","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oAJl2TXFLlHCBLpjReiS2","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              when true the renderable will be redrawn during the next update cycle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"57XyiLd5sJMa0egRhmIJE","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be clicked or not

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4p533Qw3J1r-wS-vBkm-1","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the horizontal axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_4UJVezn-t1rswHdRB6O6","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

              returns true if this renderable is flipped on the vertical axis

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AjuMNYVyWHhe9zJl_s4vP","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S78GRxf5w-y8WSKrsuYCe","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              object can be tap and hold

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pMkcdfJVZflzww6lFdsMq","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              If true then physic collision and input events will not impact this renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vm75u4xOA7khyAv6wtWN4","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              make the renderable object persistent over level changes

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7L7U59RN4co4gH8x9CqNL","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

              left coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Twc_-kjpcHzMU1hYbp5bI","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X0tFsAiFRPeynTg0QMVwa","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

              The name of the renderable

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b_qHQax36M7f5V7nm9638","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

              an event handler that is called when the renderable leave or enter a camera viewport

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TI2GDAKEGVOPh_p1IJMLf","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

              Array of points defining the Polygon
              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6A7IfQoVL1qfNSbtafRGj","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              Position of the Renderable relative to its parent container

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NxDCR8hfau7TtWEwKjojr","name":"released","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              false if the pointer is down, or true when the pointer status is up

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4ei2lPMLxU-XG_150S8Lo","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

              right coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OAAG0U2s4fr6tiLvYEBGx","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              whether the container is the root of the scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FxB2NHlumlxSQXvn83sw1","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m_zsNLliC8GQmLwT-ICZl","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

              The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9ao_N15UQWfY57pDt0VUS","name":"textAlign","brief":"","access":"public","defaultValue":"\"center\"","scope":"instance","type":"PropertyDoc","description":"

              Set the default text alignment (or justification),
              \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7kdGi-dXFe-ePm01Ary3F","name":"textBaseline","brief":"","access":"public","defaultValue":"\"middle\"","scope":"instance","type":"PropertyDoc","description":"

              Set the text baseline (e.g. the Y-coordinate for the draw operation),
              \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cxjap2ZvnXnYpsc8HSADp","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cpHdtnAPGDxA1AGD1o42Y","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

              top coordinate of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HGTS4gq_M1N2rDE0iotDt","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

              the shape type (used internally)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CjdqyAnYNcUEfdPy6gCAN","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

              Whether to update this object when the game is paused.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i572LkbovquhDMMNj78uo","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              width of the Rectangle

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UclrMKmdoPStlrSQ_0O1m","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add a child to the container
              \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

              forces the z index of the child to the specified value

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the added child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NzrNl3k2At0BqpJ8DFkz2","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add a child to the container at the specified index
              \n(the list won't be sorted after insertion)

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

              The index at which to insert the child

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the added child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2OV1VxSnv_lWfTaKjb43P","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KItvYQFVuKAwvsTP_eUYl","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

              center the rectangle position around the given coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              the x coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the y coordinate around which to center this rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kz3eK1UepkzzNGRY-IWsq","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              clone this rectangle

              ","params":[],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z32UbfOyu94jI3fMtMNQd","name":"constructor","brief":"","examples":[{"caption":"","code":" // Create a new Button\n class PlayButton extends UITextButton {\n constructor(x,y) {\n super(x,y, {\n font: 'my-font',\n text: 'Play',\n // if you omit the next two, size is calculated by the size of the text\n borderWidth: 200,\n borderHeight: 20,\n });\n }\n\n onClick(){\n state.change(state.PLAY);\n }\n }\n\n world.addChild(new PlayButton(15,200));"}],"scope":"instance","type":"MethodDoc","description":"

              A Bitmap Text Button with an outlined background border, filled with background color.\nIt uses a RoundRect as background a...","params":[{"identifier":"x","optional":false,"description":"

              x pos of the button

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y pos of the button

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.font","optional":true,"description":"

              The name of the BitmapText font to use

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","optional":true,"default":"1","description":"

              The scale factor of the BitmapText

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"description":"

              The text to display

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.bindKey","optional":true,"description":"

              The key to bind the action to (default: none)

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.backgroundColor","optional":true,"default":"\"#00aa0080\"","description":"

              The css value of a background color

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.hoverColor","optional":true,"default":"\"#00ff00ff\"","description":"

              The css value of a color to be used if the pointer hovers over the button

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.borderStrokeColor","optional":true,"default":"\"#000000\"","description":"

              The css value of a color to be used to draw the border

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.fillStyle","optional":true,"description":"

              The css value of a tint color to be used to tint the BitmapText

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textAlign","optional":true,"default":"\"center\"","description":"

              horizontal text alignment

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"middle\"","description":"

              the text baseline

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.borderWidth","optional":true,"description":"

              Width of the button

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.borderHeight","optional":true,"description":"

              Height of the button

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CJqmE-TQiI-uC_diBzjB9","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

              Returns true if the rectangle contains the given point or rectangle

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point, or a rectangle to test

              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

              y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              True if the rectangle contain the given point or rectangle, otherwise false

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ui7uy3caqtoUhV7Eu2ANV","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              copy the position and size of the given rectangle into this one

              ","params":[{"identifier":"rect","optional":false,"description":"

              Source rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              new rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5_LAY3MF648rdeDtxDga8","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance to the specified target

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              distance

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2lLEPvtHBfOXLWOV25BGo","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is identical to the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if equals

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ef5nrRHX979xlkSkq0ghn","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

              flip the renderable on the horizontal axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"56cLrfEMRY4u02NIRF-Hx","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

              flip the renderable on the vertical axis (around the center of the renderable)

              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

              true to flip this renderable.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EkfBJdrYKPYJcbuEyTSkx","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

              The forEach() method executes a provided function once per child element.
              \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

              fnction to execute on each element

              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

              value to use as this(i.e reference Object) when executing callback.

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"M0hb1L_ZzNvRYfBdQBW4L","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the renderable absolute position in the game world

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jy1_3m2RX4pb_X85LVuHN","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the bounding box for this renderable

              ","params":[],"returns":[{"description":"

              bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mHgf_qGETSuXmHekE0IUL","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the Child at the specified index

              ","params":[{"identifier":"index","optional":false,"description":"

              The index of the child

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              the child at the specified index

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jG7LLP2gjGX4j1RnA0aKn","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the child corresponding to the specified GUID
              \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

              child GUID

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              corresponding child or null

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uYY09k_kaWzNeBMkON5OS","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the list of childs with the specified name
              \nas defined in Tiled (Name field of the Object Properties)
              \nnote ...","params":[{"identifier":"name","optional":false,"description":"

              child name

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              Array of children

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"eK8cc9AfBV7ju5godIdpK","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

              return the child corresponding to the given property and value.
              \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

              Property name

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

              Value of the property

              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

              Array of childs

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"TjylfQolzLxFiPGh8fA6G","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the list of childs with the specified class type

              ","params":[{"identifier":"classType","optional":false,"description":"

              Class type

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

              Array of children

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"_8ct2wgdDdb1knKZz8gCb","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the index of the given Child

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

              index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A3GJ9avy2UMs0-mHzLq_U","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

              return all child in this container

              ","params":[],"returns":[{"description":"

              an array of renderable object

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"JaOR0WyZxb0G-8PqxZnGp","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns a list of indices for all triangles defined in this polygon

              ","params":[],"returns":[{"description":"

              an array of vertex indices for all triangles forming this polygon.

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"R3XdP6WefcyrumR7A7cEG","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the next child within the container or undefined if none

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

              child

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h44pD2-XPfLDNJRfjfrkG","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the renderable alpha channel value

              ","params":[],"returns":[{"description":"

              current opacity value between 0 and 1

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YNYBpt5gKcYJf85K5LR0B","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the instance of the root container (i.e. the current application World container).

              ","params":[],"returns":[{"description":"

              root container

              ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vIMXjFl096bhBl54KGcye","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if contains the specified Child

              ","params":[{"identifier":"child","optional":false,"description":"

              The child object

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LrFA7GEBsRjAlh-4t8ozF","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

              Checks if this container is root or if it's attached to the root container.

              ","params":[],"returns":[{"description":"

              true if this container is root or if it's attached to the root container

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"z2_4iXtiQAu3ZHoU3CCEk","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

              ","params":[],"returns":[{"description":"

              true if the vertices are convex, false if not, null if not computable

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mcyDotbfejMQbck_UO5R7","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

              determines whether all coordinates of this rectangle are finite numbers.

              ","params":[],"returns":[{"description":"

              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LkyShekbV0CA1GNwWYHco","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable towards the given target.

              ","params":[{"identifier":"target","optional":false,"description":"

              the renderable or position to look at

              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9Q08pcisY436iOQLBgpgk","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the child in the group one step backward (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"6-D2cxa3c0p3b9IS54IqD","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the specified child the bottom (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"oK7GN704USdGDQIbkM61Y","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the specified child to the top(z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"bmJw_CQm5j8v3j1SpY5U9","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Move the child in the group one step forward (z depth).

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be moved

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ukwot-VgxtZ6YoKxXzXHG","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

              a callback to be extended, triggered after a child has been added or removed

              ","params":[{"identifier":"index","optional":false,"description":"

              added or removed child index

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ntSUtvRVu5LBoW5UB32Ch","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed (to be extended)

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ygs16HZOk29gDV32Vo2Ud","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

              onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

              ","params":[{"identifier":"response","optional":false,"description":"

              the collision response object

              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

              the other renderable touching this one (a reference to response.a or response.b)

              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

              true if the object should respond to the collision (its position and velocity will be corrected)

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hyQ1VeTuRHdetUdeh8_EN","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

              OnDestroy Notification function
              \nCalled by engine before deleting the object

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PJ3DjUfzWGvrDCFPtyzmK","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and held
              \nto be extended

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dGB_QGBb3VC2PqU4Tq6FF","name":"onMove","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is moved over the object

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"swaorio7isb4ktYpRE6Ic","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is leaving the object area

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uWfqz82CR2DmIYtPLHRag","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the pointer is over the object

              ","params":[{"identifier":"event","optional":false,"description":"

              the event object

              ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0cXyFCXsDSlCxI5ttSmr_","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

              function called when the object is pressed and released (to be extended)

              ","params":[],"returns":[{"description":"

              return false if we need to stop propagating the event

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vVzy-_gk35njm9kWD4xgN","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if this rectangle is intersecting with the specified one

              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LxMIOVv_zLo0m4bVVmTzC","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

              restore the rendering context after drawing (automatically called by melonJS).

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"B-OFLhQjE_staXANaLJG4","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer object

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"uZ86HjeAOFRzLNM5Z-9uJ","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lhz5lXh8OfX1DJLlxKj3n","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

              Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

              Child to be removed

              ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

              true to prevent calling child.destroy()

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Y6LsQfcLqOcjHENkT6-gN","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

              Removes (and optionally destroys) a child from the container.
              \n(removal is immediate and unconditional)
              \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

              Child to be removed

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

              True to prevent calling child.destroy()

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"aL71KdqQzWLCwzqDTMY27","name":"reset","brief":"

              reset the container, removing all childrens, and reseting transforms.

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uJ0HzyMFD0NwcQgNrVpgI","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resize the rectangle

              ","params":[{"identifier":"w","optional":false,"description":"

              new width of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              new height of the rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QVlFj-bPxNoTU77JUzWvO","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this renderable by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Whg-uj9F4qmvazKhTETql","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

              a number representing the abscissa of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

              a number representing the ordinate of the scaling vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bOuwuJ4UE96dOqkvLqUko","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              scale the renderable around his anchor point

              ","params":[{"identifier":"v","optional":false,"description":"

              scaling vector

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nzypPTLvbg_V58gVhdmUi","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

              Automatically set the specified property of all childs to the given value

              ","params":[{"identifier":"prop","optional":false,"description":"

              property name

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

              property value

              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

              recursively apply the value to child containers if true

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"LZnoLiEnGhhmAW-tQXmzg","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the renderable alpha channel value

              ","params":[{"identifier":"alpha","optional":false,"description":"

              opacity value between 0.0 and 1.0

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FUGRYISf6up6GhdHgs9U4","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

              set new value to the rectangle shape

              ","params":[{"identifier":"x","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              position of the Rectangle

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              width of the rectangle, or an array of vector defining the rectangle

              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

              height of the rectangle, if a numeral width parameter is specified

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              this rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iCHhjNenK4JJYFNpksvaN","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the vertices defining this Polygon

              ","params":[{"identifier":"vertices","optional":false,"description":"

              array of vector or vertice defining the Polygon

              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

              this instance for objecf chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"n2xK1zXDK1bQpIdmV90xI","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              Shifts the Polygon to the given position vector.

              ","params":[{"identifier":"x","description":"

              x coordinate or a vector point to shift to

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"eJXT7DR-8ea_qLz1b3FTS","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

              Manually trigger the sort of all the childs in the container

              ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

              recursively sort all containers if true

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"-e7DR6Rzi0p5KE-qSsNGd","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

              Swaps the position (z-index) of 2 children

              ","params":[{"identifier":"child","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

              Child to be added

              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"RaAQUfm9yXmY7SazCxXPv","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply a 2d projection to this shapen

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZV5KmMXkJ3fRYpmpAeOHZ","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              apply an isometric projection to this shape

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l5wGm0iqYrr2NrBONkMFg","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns a polygon whose edges are the same as this box.

              ","params":[],"returns":[{"description":"

              a new Polygon that represents this rectangle.

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v_bBvkV1gb0hdFjZcclPi","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

              multiply the renderable currentTransform with the given matrix

              ","params":[{"identifier":"m","optional":false,"description":"

              the transformation matrix

              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AlegZ8o7ucjT-C4XjU5YS","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

              translate the Polygon by the specified offset

              ","params":[{"identifier":"x","description":"

              x offset or a vector point to translate by

              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

              y offset

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-4N9JiDJrEipFjFi_1O2Y","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

              merge this rectangle with another one

              ","params":[{"identifier":"rect","optional":false,"description":"

              other rectangle to union with

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              the union(ed) rectangle

              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RI9BEHQrqmccRbFLZbBr7","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

              update the bounding box for this container.

              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

              update the bounds size and position in (world) absolute coordinates

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              this container bounding box Rectangle object

              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w0zvGvKp8wznTxcpxGKOF","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              draw this renderable (automatically called by melonJS)

              ","params":[{"identifier":"renderer","optional":false,"description":"

              a renderer instance

              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

              the viewport to (re)draw

              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"coOSFHo2ouwf_JrIBPjMB","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

              container update function.
              \nautomatically called by the application update loop {@link Application}

              ","params":[{"identifier":"dt","optional":false,"description":"

              time since the last update in milliseconds.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              true if the Container is dirty

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jnbLhyihDvYYS5n8LUxxo","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

              called when the anchor point value is changed

              ","params":[{"identifier":"x","optional":false,"description":"

              the new X value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              the new Y value to be set for the anchor

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"FdgclKm2dd6eT1PQHjgAb","name":"Vector2d","brief":"","type":"ClassDoc","description":"

              a generic 2D Vector Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"nzrFjUl8hMzN1VnksHeOq","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

              x value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yodBaGYr8Shd3oabRK5PQ","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

              y value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PoEfBo9d9S7Ro-A3l8SfO","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector values to absolute values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rVkTeKhOZgMUhDVzlx_yP","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add the passed vector to this vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y3MqmQpzFxmKGT9UJ-1Nk","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle between this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E2EbHRW5sIrJdSKB-l2Jl","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

              Ceil the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector2d

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pn7xjR7MQXoWmbk-xx_yx","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Ceil this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IMN21oPFm35_tzvuhfl3N","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Clamp the vector value within the specified value range

              ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              new me.Vector2d

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UQTTIAPHyMpcatgsVCPg7","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Clamp this vector value within the specified value range

              ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JQypSSVx25NwchAuK-iW1","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a clone copy of this vector

              ","params":[],"returns":[{"description":"

              new me.Vector2d

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3Txw8xvGTsYxRzwdTtR0-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

              x value of the vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

              y value of the vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"yeSSzSAoVnSqXnBDkXszf","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              Copy the x,y values of the passed vector to this one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bWH-VgM61afHcjI-1k8he","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the cross product of this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              The cross product.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qau-rxYaI7THu4hVCbtuY","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance between this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K9Jhb3NpAx5JE0eMzFhIy","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

              Divide this vector values by the passed value

              ","params":[{"identifier":"n","optional":false,"description":"

              the value to divide the vector by

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9rM-FZFwMPGfL1mWez0RO","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the dot product of this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              The dot product.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"umKZvs4OE_zVWbgVAcJCk","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if this vector is equal to the given values or vector

              ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Vector2d | ObservableVector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hVPabLn11ZMRCkPBo7wfM","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

              Floor the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector2d

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wb07HPwZQrizQr2XkuAy3","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Floor this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WYUvr2sGJG91DzwWHQMdz","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the length (magnitude) of this vector

              ","params":[],"returns":[{"description":"

              the length of this vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IwFrEGiJI0O-r57Ox30qi","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the square length of this vector

              ","params":[],"returns":[{"description":"

              The length^2 of this vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m-2c5_NGnUWLYGp0QS6Gt","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Linearly interpolate between this vector and the given one.

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

              distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LJ8xFlMQiDkc_HdBp0Xn4","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector with the maximum value between this and the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HFjaV0YCH3hK9Svl7xC3r","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector with the minimum value between this and the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tIbFbl_L8MPOF75awcGGG","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

              interpolate the position of this vector towards the given one by the given maximum step.

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"step","optional":false,"description":"

              the maximum step per iteration (Negative values will push the vector away from the target)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UJMxHTsbVVKp_nppvqYq_","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Negate the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector2d

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kJybWkrDEyYVQ8APnlcgH","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Negate this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g8BtHSyMJPFr4Oh4GocLn","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

              normalize this vector (scale the vector so that its magnitude is 1)

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xcu0zK9o0OduXcsZGYTJ6","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

              change this vector to be perpendicular to what it was before.
              \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kC8IwzcNh4lQLZc5g4VyH","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

              project this vector on to another vector.

              ","params":[{"identifier":"v","optional":false,"description":"

              The vector to project onto.

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"am4S7qMQA4ppah4A5_saz","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

              Project this vector onto a vector of unit length.
              \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

              The unit vector to project onto.

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ASSyzo1NEGRxzmiN6-GGa","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this vector (counter-clockwise) by the specified angle (in radians).

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ENf7jgVLFjoeTq_UCeRY3","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              Multiply this vector values by the given scalar

              ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iSWAJqnen1cDuGy1rBDKT","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Multiply this vector values by the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QVOKAn0ZXWWgwj1zhhC-T","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties to the given values

              ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3UwlvAo-ENHWyYJVzbv3o","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties using the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ie-c0PAfbcOO_Wb7TDsE2","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties to 0

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d3JJhzumgSKjkS75x46z0","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

              Substract the passed vector to this vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OKn3LlVe0GmLMt0tob3sr","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              Convert this vector into 2d coordinate space

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FkXYLW-PH6-Vmk50K6N-Z","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              Convert this vector into isometric coordinate space

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sWNmX-eJ-iQaxFqD0ejAq","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

              convert the object to a string representation

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"oClnRNRhnxF-8E_H_O08K","name":"Vector3d","brief":"","type":"ClassDoc","description":"

              a generic 3D Vector Object

              ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"60gRFo9NI1DHdhvU9XV1-","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

              x value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x1QGEIWhMMimkqgGuAadM","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

              y value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qEF1bIgWa-z91Ff94Ynxe","name":"z","brief":"","scope":"instance","type":"PropertyDoc","description":"

              z value of the vector

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q8NY-LLwcsWSiuquQ4Ns9","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector values to absolute values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SOpAWvl3Ygx1VKU2H1-oB","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

              Add the passed vector to this vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XofM5T_ArkGaW4ygmjLSR","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the angle between this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RqsNYbrPHfoY6vf7f2mCz","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

              Ceil the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector3d

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pKkD4VQg3mctEpCxp3xkI","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Ceil this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_NbuSTb1xmgN3DISYjpSN","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Clamp the vector value within the specified value range

              ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              new me.Vector3d

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1YpZggNzOhDS79BvfJ_FN","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Clamp this vector value within the specified value range

              ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hqJQwxlx01-qOdsiEb4wc","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a clone copy of this vector

              ","params":[],"returns":[{"description":"

              new me.Vector3d

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EbtcFlnRzanVjAYRDrlRy","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

              x value of the vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

              y value of the vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

              z value of the vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ibV1ipPf2l3LjuqgEkApT","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

              Copy the components of the given vector into this one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x86OtN-IbhgqTqSIFNfwJ","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

              calculate the cross product of this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"moiJvtqmUJlEfwq4FWsPa","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the distance between this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JKhyiI1zQWJTki-83Wn16","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

              Divide this vector values by the passed value

              ","params":[{"identifier":"n","optional":false,"description":"

              the value to divide the vector by

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VU92VQy15mRucOk83XwnH","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the dot product of this vector and the passed one

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              The dot product.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UyTBHXM5drxvWn_tXnnwv","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

              return true if this vector is equal to the given values or vector

              ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Vector2d | ObservableVector2d | Vector3d | ObservableVector3d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LRbPmHea0jUmI5nHiEG1m","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

              Floor the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector3d

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v_z3rVW4TpD7uJ4lclsLH","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Floor this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ti9lluUHB2C9IwbwYkB3l","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the length (magnitude) of this vector

              ","params":[],"returns":[{"description":"

              the length of this vector

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SyAic-ioN-SxCkIc7iO9k","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the square length of this vector

              ","params":[],"returns":[{"description":"

              The length^2 of this vector.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1Kh2grbU9MAC5QjEVjDyQ","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

              Linearly interpolate between this vector and the given one.

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

              distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vCrBPOarJvzEPOJJ6nwdI","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector with the maximum value between this and the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LmqfJN8JyGh1JOSaaaXkK","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Update this vector with the minimum value between this and the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TbPiY4W1BhgLpsrlrB3qA","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

              interpolate the position of this vector on the x and y axis towards the given one by the given maximum step.

              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"step","optional":false,"description":"

              the maximum step per iteration (Negative values will push the vector away from the target)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"c6RMel0W0E_NVGKt9LcH0","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Negate the vector values

              ","params":[],"returns":[{"description":"

              new me.Vector3d

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"D1ngqk7wQVb6x9C2zzwoJ","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

              Negate this vector values

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_Fe2v-r6RdhNqBnihkk_T","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

              normalize this vector (scale the vector so that its magnitude is 1)

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"olr1VQARWIG2Z7albNAOo","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

              change this vector to be perpendicular to what it was before.
              \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DVTO5DICsp8TapkZDE2BP","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

              project this vector on to another vector.

              ","params":[{"identifier":"v","optional":false,"description":"

              The vector to project onto.

              ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oGzESZHDVNLzD0SpBHbCs","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

              Project this vector onto a vector of unit length.
              \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

              The unit vector to project onto.

              ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Jc4Z1rjH3l7k7sZIZBuTz","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

              Rotate this vector (counter-clockwise) by the specified angle (in radians) around the z axis

              ","params":[{"identifier":"angle","optional":false,"description":"

              The angle to rotate (in radians)

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

              an optional point to rotate around (on the same z axis)

              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d5qO9pphoHG0VzZkAHgMq","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              Multiply this vector values by the given scalar

              ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CUo9mDHth-Wwo50AphkMH","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

              Multiply this vector values by the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v04s_eNj59N107Qh10iiI","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties to the given values

              ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nh1MFMhFhQBfCSFya9QSE","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties using the passed vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2Q3vjJIbApR8ZBZMy3_FE","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

              set the Vector x and y properties to 0

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ljgzJRpXjpgozKa7Iw8ax","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

              Substract the passed vector to this vector

              ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dG27tqnHzAr9PvaMSkX_V","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              Convert this vector into 2d coordinate space

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"D0mJijjRJPGtKPQFmNuow","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

              Convert this vector into isometric coordinate space

              ","params":[],"returns":[{"description":"

              Reference to this object for method chaining

              ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w1Yggs_Z2qEA-AjcuGAYP","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

              convert the object to a string representation

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"nJJO5VcQL1VNPJG1EE1PN","name":"WebGLRenderer","brief":"","type":"ClassDoc","description":"

              a WebGL renderer object

              ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"rSZ3pIIu3QObKt_FPuMea","name":"compositors","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The list of active compositors

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dkXODF-MN9D4BnpkJWwTt","name":"currentCompositor","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The current compositor used by the renderer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l9F3A9UX1KcA5cxLO0l2l","name":"currentProgram","brief":"","scope":"instance","type":"PropertyDoc","description":"

              a reference to the current shader program used by the renderer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BdvROG-khkG-MmiqnyzMg","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The current transformation matrix used for transformations on the overall scene

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L69l5CC5o1lel1Kjy_Qwk","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

              the default method to sort object ("sorting", "z-buffer")

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o3a6geto-hUugkGpVHSYl","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              the requested video size ratio

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5wplLljz11JHD_M_6AvDl","name":"gl","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The WebGL context

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XJyEhu_mwn7Fa5etS9pYi","name":"GPURenderer","brief":"","defaultValue":"undefined","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

              The renderer string of the underlying graphics driver.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2fPVdjLpKrRjlNDvPplFl","name":"GPUVendor","brief":"","defaultValue":"undefined","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

              The vendor string of the underlying graphics driver.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dhfrsNEXLFSn_781k-FOP","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

              return the height of the canvas which this renderer draws to

              ","params":[],"returns":[{"description":"

              height of the system Canvas

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FBqfzN2sk0d_EBeIW8tcq","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

              true if the current rendering context is valid

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ie_V1CzSHAgsEsbnWjxTR","name":"maxTextures","brief":"","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

              Maximum number of texture unit supported under the current context

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q9IsskDUtgwmRP3575oar","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

              The Path2D instance used by the renderer to draw primitives

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"79XRK21RIZMcz-dUdgCkH","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

              the scaling ratio to be applied to the main canvas

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T8GBXnjPfJ4fWEKn_JFeH","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

              The given constructor options

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ILRPyUYgC66JWgFTsZxVP","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

              The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YMZoT8fZkZQb65fsTFcu2","name":"vertexBuffer","brief":"","scope":"instance","type":"PropertyDoc","description":"

              the vertex buffer used by this WebGL Renderer

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RyYYIZnEOSjP3UHHwy5KV","name":"WebGLVersion","brief":"","defaultValue":"1","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

              The WebGL version used by this renderer (1 or 2)

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4F5TSRnE74plEUU7JoefE","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

              return the width of the canvas which this renderer draws to

              ","params":[],"returns":[{"description":"

              width of the system Canvas

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"92y_1Yt7mJfe2nLoxlZj_","name":"addCompositor","brief":"","scope":"instance","type":"MethodDoc","description":"

              add a new compositor to this renderer

              ","params":[{"identifier":"compositor","optional":false,"description":"

              a compositor instance

              ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}},{"identifier":"name","optional":false,"default":"\"default\"","description":"

              a name uniquely identifying this compositor

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"activate","optional":true,"default":"false","description":"

              true if the given compositor should be set as the active one

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"IaZXUAPmqgHs61wbV6SPs","name":"beginPath","brief":"","examples":[{"caption":"","code":"// First path\nrenderer.beginPath();\nrenderer.setColor(\"blue\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(200, 20);\nrenderer.stroke();\n// Second path\nrenderer.beginPath();\nrenderer.setColor(\"green\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(120, 120);\nrenderer.stroke();"}],"scope":"instance","type":"MethodDoc","description":"

              starts a new path by emptying the list of sub-paths. Call this method when you want to create a new path

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EeO108IG17GmxSDG6dpfp","name":"clear","brief":"

              Clear the frame buffer

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wfYLIwpulpKAD7WDeiq4o","name":"clearColor","brief":"","scope":"instance","type":"MethodDoc","description":"

              Clears the gl context with the given color.

              ","params":[{"identifier":"color","optional":true,"default":"\"#000000\"","description":"

              CSS color.

              ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"opaque","optional":true,"default":"false","description":"

              Allow transparency [default] or clear the surface completely [true]

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"1WeVitYbXkSw56Ojx2Hyp","name":"clearMask","brief":"","scope":"instance","see":["WebGLRenderer#setMask"],"type":"MethodDoc","description":"

              disable (remove) the rendering mask set through setMask.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WClBT9Add3GBwzqOa-EJj","name":"clearRect","brief":"","scope":"instance","type":"MethodDoc","description":"

              Erase the pixels in the given rectangular area by setting them to transparent black (rgba(0,0,0,0)).

              ","params":[{"identifier":"x","optional":false,"description":"

              x axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              The rectangle's width.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              The rectangle's height.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bh9amYprluVbpLWxJAauS","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

              clear the rendering tint set through setTint.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o98OwgfF0cLABuW1fgn7f","name":"clipRect","brief":"","scope":"instance","type":"MethodDoc","description":"

              clip the given region from the original canvas. Once a region is clipped,\nall future drawing will be limited to the clippe...","params":[{"identifier":"x","optional":false,"description":"

              x axis of the coordinate for the upper-left corner of the rectangle to start clipping from.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y axis of the coordinate for the upper-left corner of the rectangle to start clipping from.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              the width of the rectangle to start clipping from.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              the height of the rectangle to start clipping from.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"syMJgkACK_DNrHP7j3tky","name":"closePath","brief":"

              add a straight line from the current point to the start of the current sub-path. If the shape has already been closed or has only one point, this function does nothing

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4FR7bOexgnjoRgOVR2RlG","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

              optional parameters for the renderer

              ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jwojyD0pOR2ufBaeqzEPa","name":"createPattern","brief":"","examples":[{"caption":"","code":"let tileable = renderer.createPattern(image, \"repeat\");\nlet horizontal = renderer.createPattern(image, \"repeat-x\");\nlet vertical = renderer.createPattern(image, \"repeat-y\");\nlet basic = renderer.createPattern(image, \"no-repeat\");"}],"scope":"instance","see":["ImageLayer#repeat"],"type":"MethodDoc","description":"

              Create a pattern with the specified repetition

              ","params":[{"identifier":"image","optional":false,"description":"

              Source image to be used as the pattern's image

              ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"repeat","optional":false,"description":"

              Define how the pattern should be repeated

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

              the patterned texture created

              ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"etYPcUKVmoAIpe7ECvLsT","name":"drawImage","brief":"","examples":[{"caption":"","code":"// Position the image on the canvas:\nrenderer.drawImage(image, dx, dy);\n// Position the image on the canvas, and specify width and height of the image:\nrenderer.drawImage(image, dx, dy, dWidth, dHeight);\n// Clip the image and position the clipped part on the canvas:\nrenderer.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);"}],"scope":"instance","type":"MethodDoc","description":"

              Draw an image to the gl context

              ","params":[{"identifier":"image","optional":false,"description":"

              An element to draw into the context.

              ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"sx","optional":false,"description":"

              The X coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sy","optional":false,"description":"

              The Y coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sw","optional":false,"description":"

              The width of the sub-rectangle of the source image to draw into the destination context. If not specified, the entire rect...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sh","optional":false,"description":"

              The height of the sub-rectangle of the source image to draw into the destination context.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dx","optional":false,"description":"

              The X coordinate in the destination canvas at which to place the top-left corner of the source image.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dy","optional":false,"description":"

              The Y coordinate in the destination canvas at which to place the top-left corner of the source image.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dw","optional":false,"description":"

              The width to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the image...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dh","optional":false,"description":"

              The height to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the imag...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QFbzCRwAdp6fW7O4MRBT-","name":"drawPattern","brief":"","scope":"instance","see":["WebGLRenderer#createPattern"],"type":"MethodDoc","description":"

              Draw a pattern within the given rectangle.

              ","params":[{"identifier":"pattern","optional":false,"description":"

              Pattern object

              ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

              x position where to draw the pattern

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y position where to draw the pattern

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              width of the pattern

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              height of the pattern

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9PBIbCayfiYvaJP-fqGJH","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

              fill the given shape or the current defined path

              ","params":[{"identifier":"shape","optional":true,"description":"

              a shape object to fill

              ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"0Xmxk6W1-KbVLqcjAWv51","name":"fillArc","brief":"","scope":"instance","type":"MethodDoc","description":"

              Fill an arc at the specified coordinates with given radius, start and end points

              ","params":[{"identifier":"x","optional":false,"description":"

              arc center point x-axis

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              arc center point y-axis

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

              arc radius

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

              start angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

              end angle in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

              draw arc anti-clockwise

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"tbHi-33gNmPPQToippQVo","name":"fillEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

              Fill an ellipse at the specified coordinates with given radius

              ","params":[{"identifier":"x","optional":false,"description":"

              ellipse center point x-axis

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              ellipse center point y-axis

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

              horizontal radius of the ellipse

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

              vertical radius of the ellipse

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BOuFvliYpldm1LiS0L9T5","name":"fillLine","brief":"","scope":"instance","type":"MethodDoc","description":"

              Fill a line of the given two points

              ","params":[{"identifier":"startX","optional":false,"description":"

              the start x coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

              the start y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

              the end x coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

              the end y coordinate

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"EwkgmQVV4Lsrlem2uijNu","name":"fillPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

              Draw a a point at the specified coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              x axis of the coordinate for the point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y axis of the coordinate for the point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2CJC_FBphzt2xZspxlB6j","name":"fillPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

              Fill a me.Polygon on the screen

              ","params":[{"identifier":"poly","optional":false,"description":"

              the shape to draw

              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Cmq2bHHRfdYfkkxc0FYAM","name":"fillRect","brief":"","scope":"instance","type":"MethodDoc","description":"

              Draw a filled rectangle at the specified coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              x axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              The rectangle's width.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              The rectangle's height.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rqdGJUFX5eO5AblPFnJR_","name":"fillRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

              Draw a rounded filled rectangle at the specified coordinates

              ","params":[{"identifier":"x","optional":false,"description":"

              x axis of the coordinate for the rounded rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              y axis of the coordinate for the rounded rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              The rounded rectangle's width.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              The rounded rectangle's height.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

              The rounded corner's radius.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"q-7ebAxXZAw1VH4OjbEoN","name":"flush","brief":"

              Flush the compositor to the frame buffer

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gFCVBzafArbDTjb2Aw8YQ","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

              returns the current blend mode for this renderer

              ","params":[],"returns":[{"description":"

              blend mode

              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"HHPPM71jHDXDE-jJbhsig","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

              return a reference to the canvas which this renderer draws to

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"U_vzB19QQ7QmNqVV9NvM6","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

              get the current fill & stroke style color.

              ","params":[],"returns":[{"description":"

              current global color

              ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7uyceznmrAw5qc-uQaOHy","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the WebGLContext instance for the renderer\nreturn a reference to the system 2d Context

              ","params":[],"returns":[{"description":"

              the current WebGL context

              ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h7CKm_1SvaVWHG84Yp00S","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the 2D Context object of the given Canvas
              \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

              use false to disable transparency

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DXHxRpFh8Zzed3i23m7LZ","name":"getContextGL","brief":"","scope":"instance","type":"MethodDoc","description":"

              Returns the WebGL Context object of the given canvas element

              ","params":[{"identifier":"canvas","optional":false,"description":"

              the canvas element

              ","dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"false","description":"

              use true to enable transparency

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"depth","optional":true,"default":"false","description":"

              use true to enable depth buffer testing

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

              the WebGL Context object

              ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AJ5XQNBmOmBca6FfNFK7Z","name":"getGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

              Return the global alpha

              ","params":[],"returns":[{"description":"

              global alpha value

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"upRClkmicVhGagYEPDZtY","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

              return a reference to the screen canvas

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"58ESi6mgnHDoTSVffMwBz","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

              return a reference to the screen canvas corresponding 2d Context
              \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Sa8sfgifHJGjxgP-Z9xFk","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

              return the current global alpha

              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pBk_IDKnNtazlO3eiU26s","name":"lineTo","brief":"

              adds a straight line to the current sub-path by connecting the sub-path's last point to the specified (x, y) coordinates.

              ","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false},{"identifier":"y","optional":false}],"returns":[],"extends":[],"implements":[]},{"id":"szkCgh6eys7kRB0LNvR2E","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

              begins a new sub-path at the point specified by the given (x, y) coordinates.

              ","params":[{"identifier":"x","optional":false,"description":"

              The x axis of the point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              The y axis of the point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"XAYWljy4am676yvSyGFbC","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

              check if the given rect or bounds overlaps with the renderer screen coordinates

              ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

              true if overlaps

              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"X-Ah8HevFgC4OgA4So4qm","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

              creates a rectangular path whose starting point is at (x, y) and whose size is specified by width and height.

              ","params":[{"identifier":"x","optional":false,"description":"

              The x axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              The y axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              The rectangle's width.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              The rectangle's height.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7FgqKiskvsPxGwjpsalAe","name":"reset","brief":"

              Reset context state

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rsJaL8OpkkVg7nDoZeZZ_","name":"resetTransform","brief":"

              Reset the gl transform to identity

              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FpkFaf7WyfVFQOOnkPYH6","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

              resizes the system canvas

              ","params":[{"identifier":"width","optional":false,"description":"

              new width of the canvas

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              new height of the canvas

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cwL1P7pRWyfwbuyaF8361","name":"restore","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

              restores the most recently saved renderer state by popping the top entry in the drawing state stack

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8utv-vos4DfShzkUff5jV","name":"rotate","brief":"","examples":[{"caption":"","code":" // Rotated rectangle\n renderer.rotate((45 * Math.PI) / 180);\n renderer.setColor(\"red\");\n renderer.fillRect(10, 10, 100, 100);\n\n // Reset transformation matrix to the identity matrix\n renderer.setTransform(1, 0, 0, 1, 0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

              adds a rotation to the transformation matrix.

              ","params":[{"identifier":"angle","optional":false,"description":"

              the rotation angle, clockwise in radians

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"lPv_xoub2seerzeMkudQP","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

              adds a rounded rectangle to the current path.

              ","params":[{"identifier":"x","optional":false,"description":"

              The x axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              The y axis of the coordinate for the rectangle starting point.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

              The rectangle's width.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

              The rectangle's height.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

              The corner radius.

              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"T2D3v6gufP-M3pYq640Or","name":"save","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

              saves the entire state of the renderer by pushing the current state onto a stack.

              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e-_DOuEnBAeUbARHCK8eB","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

              adds a scaling transformation to the renderer units horizontally and/or vertically

              ","params":[{"identifier":"x","optional":false,"description":"

              Scaling factor in the horizontal direction. A negative value flips pixels across the vertical axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

              Scaling factor in the vertical direction. A negative value flips pixels across the horizontal axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wMV8cg-ZREkieJsX_tZDR","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

              enable/disable image smoothing (scaling interpolation) for the given context

              ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"pqrFD8kv0CkBJnC14Uuxb","name":"setBlendMode","brief":"","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation"],"type":"MethodDoc","description":"

              set a blend mode for the given context.
              \nSupported blend mode between Canvas and WebGL remderer :

              \n
                \n
              • &q...","params":[{"identifier":"mode","optional":true,"default":"\"normal\"","description":"

                blend mode : "normal", "multiply", "lighter", "additive", "screen"

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"gl","optional":true,"description":"

                a WebGL context

                ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sOQkf1fbmb3967VnNEF4i","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                Set the current fill & stroke style color.\nBy default, or upon reset, the value is set to #000000.

                ","params":[{"identifier":"color","optional":false,"description":"

                css color string.

                ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[],"extends":[],"implements":[]},{"id":"jAkAgMEuw13lJXhKlymoG","name":"setCompositor","brief":"","scope":"instance","type":"MethodDoc","description":"

                set the active compositor for this renderer

                ","params":[{"identifier":"name","optional":false,"default":"\"default\"","description":"

                a compositor name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"shader","optional":true,"description":"

                an optional shader program to be used, instead of the default one, when activating the compositor

                ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                an instance to the current active compositor

                ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KEnWcWfVm95FI1HXL9pNF","name":"setGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                Set the global alpha

                ","params":[{"identifier":"alpha","optional":false,"description":"

                0.0 to 1.0 values accepted.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DaexTKgg57DRzpkvNm9x5","name":"setLineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

                Set the line width

                ","params":[{"identifier":"width","optional":false,"description":"

                Line width

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"GsUaHqNGXL6GtorfPNv9A","name":"setMask","brief":"","scope":"instance","see":["CanvasRenderer#clearMask"],"type":"MethodDoc","description":"

                A mask limits rendering elements to the shape and position of the given mask object.\nIf the drawing or rendering area is l...","params":[{"identifier":"mask","optional":true,"description":"

                a shape defining the mask to be applied

                ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

                either the given shape should define what is visible (default) or the opposite

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"TXcgV7wQcGyoSLha8Nl6-","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                set/change the current projection matrix (WebGL only)

                ","params":[{"identifier":"matrix","optional":false,"description":"

                the new projection matrix

                ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"eEFL9xpbPIx276YvCdHCA","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

                set a coloring tint for sprite based renderables

                ","params":[{"identifier":"tint","optional":false,"description":"

                the tint color

                ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

                an alpha value to be applied to the tint

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YpxB1fe4W6nWtgeCGjYPm","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

                Reset (overrides) the renderer transformation matrix to the\nidentity one, and then apply the given transformation matrix.

                ","params":[{"identifier":"a","optional":false,"description":"

                a matrix2d to transform by, or a the a component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                the b component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                the c component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                the d component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                the e component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                the f component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"EXa2h46hDAJXAylzUM7t_","name":"setViewport","brief":"","scope":"instance","type":"MethodDoc","description":"

                Sets the WebGL viewport, which specifies the affine transformation of x and y from normalized device coordinates to window...","params":[{"identifier":"x ","optional":true,"default":" 0","description":"

                x the horizontal coordinate for the lower left corner of the viewport origin

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y ","optional":true,"default":" 0","description":"

                y the vertical coordinate for the lower left corner of the viewport origin

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w ","optional":true,"default":" width of the canvas","description":"

                the width of viewport

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h ","optional":true,"default":" height of the canvas","description":"

                the height of viewport

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iX5nBYEOZC9vovDMkziqr","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

                stroke the given shape or the current defined path

                ","params":[{"identifier":"shape","optional":true,"description":"

                a shape object to stroke

                ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

                fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"8F3eD-QFlxs3T4pdFnVhL","name":"strokeArc","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke an arc at the specified coordinates with given radius, start and end points

                ","params":[{"identifier":"x","optional":false,"description":"

                arc center point x-axis

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                arc center point y-axis

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                arc radius

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

                start angle in radians

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

                end angle in radians

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

                draw arc anti-clockwise

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"fill","optional":true,"default":"false","description":"

                also fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"nwGFCEQAuiCy6RXdS4gw4","name":"strokeEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke an ellipse at the specified coordinates with given radius

                ","params":[{"identifier":"x","optional":false,"description":"

                ellipse center point x-axis

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                ellipse center point y-axis

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                horizontal radius of the ellipse

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                vertical radius of the ellipse

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                also fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"G_ROjEc3bsNCcfiajrW-q","name":"strokeLine","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke a line of the given two points

                ","params":[{"identifier":"startX","optional":false,"description":"

                the start x coordinate

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

                the start y coordinate

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

                the end x coordinate

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

                the end y coordinate

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"76R-CEX3Suuelq-M3krrG","name":"strokePoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke a Point at the specified coordinates

                ","params":[{"identifier":"x","optional":false,"description":"

                x axis of the coordinate for the point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                y axis of the coordinate for the point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1fWkuFCaIQitzXFgdgk0B","name":"strokePolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke a me.Polygon on the screen with a specified color

                ","params":[{"identifier":"poly","optional":false,"description":"

                the shape to draw

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                also fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZRKThwQ8yb8dvniCoADUW","name":"strokeRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                Draw a stroke rectangle at the specified coordinates

                ","params":[{"identifier":"x","optional":false,"description":"

                x axis of the coordinate for the rectangle starting point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                y axis of the coordinate for the rectangle starting point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                The rectangle's width.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                The rectangle's height.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                also fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"cbQYG2ycP42cjaUFPL4cs","name":"strokeRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                Stroke a rounded rectangle at the specified coordinates

                ","params":[{"identifier":"x","optional":false,"description":"

                x axis of the coordinate for the rounded rectangle starting point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                y axis of the coordinate for the rounded rectangle starting point.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                The rounded rectangle's width.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                The rounded rectangle's height.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                The rounded corner's radius.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                also fill the shape with the current color if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"nhjOyV1q3a6F-FABjhZnM","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

                tint the given image or canvas using the given color

                ","params":[{"identifier":"src","optional":false,"description":"

                the source image to be tinted

                ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

                the color that will be used to tint the image

                ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

                the composition mode used to tint the image

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                a new canvas element representing the tinted image

                ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"Z68bXtd6q8CVyCI657VFu","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

                creates a Blob object representing the last rendered frame

                ","params":[{"identifier":"options","optional":true,"description":"

                An object with the following properties:

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                A Promise returning a Blob object representing the last rendered frame

                ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wONGLmUqy3_zwINXsVugO","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

                returns a data URL containing a representation of the last frame rendered

                ","params":[{"identifier":"options","optional":true,"description":"

                An object with the following properties:

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                A Promise returning a string containing the requested data URL.

                ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uNOqLPN7o0jHgFdh9r64f","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

                creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

                ","params":[{"identifier":"options","optional":true,"description":"

                An object with the following properties:

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                A string indicating the image format

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                A Promise returning an ImageBitmap.

                ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ia9Gs-Uc3pSq8CE1_BY0G","name":"transform","brief":"","scope":"instance","see":["{@link WebGLRenderer.setTransform} which will reset the current transform matrix prior to performing the new transformation"],"type":"MethodDoc","description":"

                Multiply given matrix into the renderer tranformation matrix

                ","params":[{"identifier":"a","optional":false,"description":"

                a matrix2d to transform by, or a the a component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                the b component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                the c component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                the d component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                the e component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                the f component to multiply the current matrix by

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"30pEG9bV_gDUpJPYxGh7R","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

                adds a translation transformation to the current matrix.

                ","params":[{"identifier":"x","optional":false,"description":"

                Distance to move in the horizontal direction. Positive values are to the right, and negative to the left.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                Distance to move in the vertical direction. Positive values are down, and negative are up.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"u73bz_GK9K4GjBinqqXcQ","name":"World","brief":"","type":"ClassDoc","description":"

                an object representing the physic world, and responsible for managing and updating all childs and physics

                ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"5DtMTXvBXRjt6fwAGqd5x","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                Define the renderable opacity
                \nSet to zero if you do not wish an object to be drawn

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Uj6qEoi7LWk8VX3Ljx0vY","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Whether the renderable object will always update, even when outside of the viewport

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HPx98r0tJLbNW2r6zbPXM","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                a reference to the parent object that contains this renderable

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ndyQYzz9JDLC2aD-VWlRL","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                The anchor point is used for attachment behavior, and/or when applying transformations.
                \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hbCNUX_tAAfDRJVb5MdUj","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the application (game) this physic world belong to

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bq2kuQNhBqia9g3OIQ896","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                Specify if the children z index should automatically be managed by the parent container

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GXzWfxv0aj64lHX1fvnMR","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                Specify if the children list should be automatically sorted when adding a new child

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AMMJM6gpKC9XWyrzylrNA","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ZC50WYxp-yTZ8rNzFmcD","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                define a background color for this container

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ueklBwaWFgTcLrULl0GeW","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0kWxTMuzlOIQOf3IPIkVd","name":"bodies","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the active physic bodies in this simulation

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9LBUxPjPk5W6Xm_mp6nIt","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                the renderable physic body

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K4tNH6vZs9I5Y0mq0Xhpy","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                bottom coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X67FU1vZI6slwAJrA1BBg","name":"broadphase","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the instance of the game world quadtree used for broadphase (used by the builtin physic and pointer event implementation)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"umMQS5Ecos8xcEi4N8Zxs","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                absolute center of this rectangle on the horizontal axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yJss1T3JlIAeaba6ZyIpZ","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                absolute center of this rectangle on the vertical axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4X2LBuOuWoZDHTFFfTpfx","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Specify if the container draw operation should clip his children to its own bounds

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nEhYPM84yu8wxsFLot-uU","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the renderable default transformation matrix

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q1SwQ0e5XfWZiibCk7tFC","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the depth of this renderable on the z axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wQYbybvYc7TKui0yN4IYT","name":"detector","brief":"","scope":"instance","type":"PropertyDoc","description":"

                the collision detector instance used by this world instance

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IKoM2Joq5W7v-CscuCeSW","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"01F8wgHOyU58vsXoP3Q4-","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vy1R2JYyE7rRT0Gmycy-K","name":"fps","brief":"","defaultValue":"60","scope":"instance","see":["timer.maxfps"],"type":"PropertyDoc","description":"

                the rate at which the game world is updated,\nmay be greater than or lower than the display fps

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p2VMSDKh_JaJZLNCsZtRM","name":"gravity","brief":"","defaultValue":"<0,0.98>","scope":"instance","type":"PropertyDoc","description":"

                world gravity

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RwAA4JBeo-PoRXMml46ZZ","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                (G)ame (U)nique (Id)entifier"
                \na GUID will be allocated for any renderable object added
                \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SZMGuJ9ij_NHfszcSXpuD","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                height of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g_Ri1lb_jr2tEwpzKmjbf","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Whether the renderable object is visible and within the viewport

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qoe1ApFEaleIux9c_eaHB","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                when true the renderable will be redrawn during the next update cycle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cx5b-M5mDwU7KtT0askLy","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                returns true if this renderable is flipped on the horizontal axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rut1QOSD4mrIoVBVbVjcu","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                returns true if this renderable is flipped on the vertical axis

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DuwvECi5iGpc6EkH4rTiu","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WugVUAIvb232swgWi4mLc","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                If true then physic collision and input events will not impact this renderable

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uHH_lMNxnHzvRTv79--1X","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                make the renderable object persistent over level changes

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"je8fk7BEGLvgDB5-10XAE","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                left coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UP1uUESynlhLv0HE78-dy","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W1ssA7gNn95CpXjHounlI","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                The name of the renderable

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rznGxHDMiG56Igk_GVOeb","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                an event handler that is called when the renderable leave or enter a camera viewport

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3w9E2qyu7K27wE1D-WOAD","name":"physic","brief":"","defaultValue":"\"builtin\"","examples":[{"caption":"","code":"// disable builtin physic\nme.game.world.physic = \"none\";"}],"scope":"instance","see":["Application.Settings.physic"],"type":"PropertyDoc","description":"

                the physic engine used by melonJS

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yc-Ps3OmxdSDlJ084gpzz","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                Array of points defining the Polygon
                \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"31fxsSgbUU5uPvphBo6Wh","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                Position of the Renderable relative to its parent container

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cWySIL02pJ1zXD2ILCm-p","name":"preRender","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Enabled pre-rendering for all tile layers.
                \nIf false layers are rendered dynamically, if true layers are first fully r...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NxH-qoK8bRxHtj8LeJgxE","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                right coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zlN8Nmy6qPVLcUeyLYvDF","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                whether the container is the root of the scene

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8P8yqexTiq4SJE5MAr4Tp","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9JiSYnj7C1Az6NFVnw5jX","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SUkI4TpH28w1o9oZsfT_7","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RyItQAeGJKp275GCmKR9X","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                top coordinate of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dqu17P4HSOBMQx0qpxokC","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                the shape type (used internally)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0qbcMk7vBdDS5JP-D5BXv","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                Whether to update this object when the game is paused.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CGgVs24jw0BiypjR_F9G-","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                width of the Rectangle

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l3HyAuZOiwkRCRy3o9ZcK","name":"addBody","brief":"","scope":"instance","see":["Container.addChild"],"type":"MethodDoc","description":"

                Add a physic body to the game world

                ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                this game world

                ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RXdC64hralg2D7zNfujTn","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                Add a child to the container
                \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                Child to be added

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                forces the z index of the child to the specified value

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                the added child

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3vI40HcEsfadkRIUtKgTH","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                Add a child to the container at the specified index
                \n(the list won't be sorted after insertion)

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be added

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                The index at which to insert the child

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                the added child

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wDMP3MonDqhD1r9sCVPam","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                return the angle to the specified target

                ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                angle in radians

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4O2bsq9CktpPMGZLvHaMD","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                center the rectangle position around the given coordinates

                ","params":[{"identifier":"x","optional":false,"description":"

                the x coordinate around which to center this rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                the y coordinate around which to center this rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                this rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aABCazgZiFyFyG0PF14mX","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                clone this rectangle

                ","params":[],"returns":[{"description":"

                new rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B-U5bdG7ySdkTWbOLMqJK","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                position of the container (accessible via the inherited pos.x property)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                position of the container (accessible via the inherited pos.y property)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":true,"default":"game.viewport.width","description":"

                width of the container

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":true,"default":"game.viewport.height","description":"

                height of the container

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QO_yaJf2EPQ6d90gnIQQR","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                Returns true if the rectangle contains the given point or rectangle

                ","params":[{"identifier":"x","description":"

                x coordinate or a vector point, or a rectangle to test

                ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                y coordinate

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                True if the rectangle contain the given point or rectangle, otherwise false

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fyKx18Liwr7vK_DVb-x8g","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                copy the position and size of the given rectangle into this one

                ","params":[{"identifier":"rect","optional":false,"description":"

                Source rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                new rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H6ujNsISloku7tLFyemt9","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                return the distance to the specified target

                ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                distance

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WIJjg1quXH7XxavrDWPNl","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                check if this rectangle is identical to the specified one

                ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                true if equals

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tbU_EFcke90E4I5mcO89q","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                flip the renderable on the horizontal axis (around the center of the renderable)

                ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                true to flip this renderable.

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M-YNLWBgw51xPEC-rY1kU","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                flip the renderable on the vertical axis (around the center of the renderable)

                ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                true to flip this renderable.

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oEYajJDI9bm8H1-fkGu_4","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                The forEach() method executes a provided function once per child element.
                \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                fnction to execute on each element

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                value to use as this(i.e reference Object) when executing callback.

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"op5lcDF_f8eJgdT5znDgU","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                return the renderable absolute position in the game world

                ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"msH73NgRn90HS_L7TaBIu","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                returns the bounding box for this renderable

                ","params":[],"returns":[{"description":"

                bounding box Rectangle object

                ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1Yzm8-WWcfahwHSO1bOM7","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns the Child at the specified index

                ","params":[{"identifier":"index","optional":false,"description":"

                The index of the child

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                the child at the specified index

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mOqf6NIbGCyGr-ktQpi1Q","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                return the child corresponding to the specified GUID
                \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                child GUID

                ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                corresponding child or null

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mcj-ENWSh-mhY-26yPba8","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                returns the list of childs with the specified name
                \nas defined in Tiled (Name field of the Object Properties)
                \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                child name

                ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                Array of children

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"6vvY6BkwuJ5SPhvMS2yKL","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                return the child corresponding to the given property and value.
                \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                Property name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                Value of the property

                ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                Array of childs

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"SPQHYTIYtoHooWt1PT7IB","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                returns the list of childs with the specified class type

                ","params":[{"identifier":"classType","optional":false,"description":"

                Class type

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                Array of children

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"WuZLUepy9YNUbH_6CStSY","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns the index of the given Child

                ","params":[{"identifier":"child","optional":false,"description":"

                The child object

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                index

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nCZn0N1k6R5Zt9ZaP0krK","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                return all child in this container

                ","params":[],"returns":[{"description":"

                an array of renderable object

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"0eoABmJeqbJWBZb9SQCoY","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                returns a list of indices for all triangles defined in this polygon

                ","params":[],"returns":[{"description":"

                an array of vertex indices for all triangles forming this polygon.

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"lqiHNQxVFhdrlkxs3vdAX","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns the next child within the container or undefined if none

                ","params":[{"identifier":"child","optional":false,"description":"

                The child object

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                child

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lsZaJspC0o7h37gB2Woox","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                get the renderable alpha channel value

                ","params":[],"returns":[{"description":"

                current opacity value between 0 and 1

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KCNfHuGn4Pp5oQdFpEGcb","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns the instance of the root container (i.e. the current application World container).

                ","params":[],"returns":[{"description":"

                root container

                ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dg4c6sGb2ilwgjL-IyVSn","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns true if contains the specified Child

                ","params":[{"identifier":"child","optional":false,"description":"

                The child object

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LWDNQr9GSHiUFvDQmjfZO","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                Checks if this container is root or if it's attached to the root container.

                ","params":[],"returns":[{"description":"

                true if this container is root or if it's attached to the root container

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vhcMQWIjDSfip8cGLOMjD","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                ","params":[],"returns":[{"description":"

                true if the vertices are convex, false if not, null if not computable

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"i1vTm3qTIuH4ucWgbdfF3","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                determines whether all coordinates of this rectangle are finite numbers.

                ","params":[],"returns":[{"description":"

                false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XelyR3_nhcYaspE0OS4cF","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                Rotate this renderable towards the given target.

                ","params":[{"identifier":"target","optional":false,"description":"

                the renderable or position to look at

                ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4JYiIeaHJd636ZIB0X5ct","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                Move the child in the group one step backward (z depth).

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be moved

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"folvJacn9I6uq7Sh-dkoO","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                Move the specified child the bottom (z depth).

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be moved

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"LT_olafLdACw_TxGN2foo","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                Move the specified child to the top(z depth).

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be moved

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"9cXgtk8wZYzIt2FD2mWzd","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                Move the child in the group one step forward (z depth).

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be moved

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"VdeiROdkbCrrJrhxn8oci","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                a callback to be extended, triggered after a child has been added or removed

                ","params":[{"identifier":"index","optional":false,"description":"

                added or removed child index

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QQP55CUtbiOp3xrUPYKH0","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                ","params":[{"identifier":"response","optional":false,"description":"

                the collision response object

                ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                the other renderable touching this one (a reference to response.a or response.b)

                ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                true if the object should respond to the collision (its position and velocity will be corrected)

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MtxLMyybI1OB9hSpV4mZv","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                OnDestroy Notification function
                \nCalled by engine before deleting the object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZHJJD37gIj0SwcV7RQymK","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                check if this rectangle is intersecting with the specified one

                ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                true if overlaps

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tEosFT0_XmigLnQmVKS5V","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                restore the rendering context after drawing (automatically called by melonJS).

                ","params":[{"identifier":"renderer","optional":false,"description":"

                a renderer object

                ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"9pVCMHrrvuMalLTuTdbSB","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                a renderer object

                ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"PDaDBQNhbs1RzgdidTSe0","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V0cs6FkOKdQKVN43yXG7a","name":"removeBody","brief":"","scope":"instance","see":["Container.removeChild"],"type":"MethodDoc","description":"

                Remove a physic body from the game world

                ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                this game world

                ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WIoM74-M3ygYo9TeY0DCS","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                Child to be removed

                ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                true to prevent calling child.destroy()

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"6JkJlOxpx59yUNPpykQy0","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                Removes (and optionally destroys) a child from the container.
                \n(removal is immediate and unconditional)
                \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                Child to be removed

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                True to prevent calling child.destroy()

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"thD-dKFU7N35-6O6vERhi","name":"reset","brief":"

                reset the game world

                ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WEG8IgxcPuDCOJR97DEbw","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                resize the rectangle

                ","params":[{"identifier":"w","optional":false,"description":"

                new width of the rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                new height of the rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                this rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7nrncXD_1lamDqfyPmClS","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                Rotate this renderable by the specified angle (in radians).

                ","params":[{"identifier":"angle","optional":false,"description":"

                The angle to rotate (in radians)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                an optional point to rotate around

                ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_UzEMQRtziEdtwl-7bhRx","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                a number representing the abscissa of the scaling vector.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                a number representing the ordinate of the scaling vector.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EzPPEojE8z3cBi9zP5uq_","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                scale the renderable around his anchor point

                ","params":[{"identifier":"v","optional":false,"description":"

                scaling vector

                ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WgA9RBK2-I40vUSvSyb5z","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                Automatically set the specified property of all childs to the given value

                ","params":[{"identifier":"prop","optional":false,"description":"

                property name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                property value

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                recursively apply the value to child containers if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"_Fg9XVujucs8AFA-fKdrN","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                set the renderable alpha channel value

                ","params":[{"identifier":"alpha","optional":false,"description":"

                opacity value between 0.0 and 1.0

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dSH6vYIfd3NpyVHMrIxcJ","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                set new value to the rectangle shape

                ","params":[{"identifier":"x","optional":false,"description":"

                position of the Rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                position of the Rectangle

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                width of the rectangle, or an array of vector defining the rectangle

                ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                height of the rectangle, if a numeral width parameter is specified

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                this rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v5Bk4xuB-g30OQZkrVABZ","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                set the vertices defining this Polygon

                ","params":[{"identifier":"vertices","optional":false,"description":"

                array of vector or vertice defining the Polygon

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                this instance for objecf chaining

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1KZJqGRsRWICRi3BsTrY9","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                Shifts the Polygon to the given position vector.

                ","params":[{"identifier":"x","description":"

                x coordinate or a vector point to shift to

                ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"G8qfT70xtaSmCKuCbMZRL","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                Manually trigger the sort of all the childs in the container

                ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                recursively sort all containers if true

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"7eD_ICnNBwQ7-pNuHXX5J","name":"step","brief":"","scope":"instance","type":"MethodDoc","description":"

                update the builtin physic simulation by one step (called by the game world update method)

                ","params":[{"identifier":"dt","optional":false,"description":"

                the time passed since the last frame update

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5dK1s5_d9ewcB-WsVP_MD","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                Swaps the position (z-index) of 2 children

                ","params":[{"identifier":"child","optional":false,"description":"

                Child to be added

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                Child to be added

                ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"64oQ5d_hbmbENXg7uFewg","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                apply a 2d projection to this shapen

                ","params":[],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eICZB-Eijp9J0UnujeI0T","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                apply an isometric projection to this shape

                ","params":[],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z6dpCD0ojt_ad8k6KeD0l","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                Returns a polygon whose edges are the same as this box.

                ","params":[],"returns":[{"description":"

                a new Polygon that represents this rectangle.

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A3kdx3rA_g5iSupUNo9mp","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                multiply the renderable currentTransform with the given matrix

                ","params":[{"identifier":"m","optional":false,"description":"

                the transformation matrix

                ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9D46nfmpZq9taWgwN847i","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                translate the Polygon by the specified offset

                ","params":[{"identifier":"x","description":"

                x offset or a vector point to translate by

                ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                y offset

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                Reference to this object for method chaining

                ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HuTpYDjVqXWbc0uj1b00w","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                merge this rectangle with another one

                ","params":[{"identifier":"rect","optional":false,"description":"

                other rectangle to union with

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                the union(ed) rectangle

                ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RlJs7E0XwrnsNszahE28w","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                update the game world

                ","params":[{"identifier":"dt","optional":false,"description":"

                the time passed since the last frame update

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                true if the world is dirty

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"sxneloK2LommHxjLcACVb","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                update the bounding box for this container.

                ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                update the bounds size and position in (world) absolute coordinates

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                this container bounding box Rectangle object

                ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yFj1mH3wywEberMClPK_g","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                draw this renderable (automatically called by melonJS)

                ","params":[{"identifier":"renderer","optional":false,"description":"

                a renderer instance

                ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                the viewport to (re)draw

                ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"t1HS4qevadr1n9UyOT6rt","name":"bodyApplyGravity","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                Apply gravity to the given body

                ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"m8gCV1pS2LPU68QXYg0w4","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                called when the anchor point value is changed

                ","params":[{"identifier":"x","optional":false,"description":"

                the new X value to be set for the anchor

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                the new Y value to be set for the anchor

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"hRvpv5591ZHq6qdc1MnKO","name":"AUTO","brief":"","defaultValue":"2","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                constant to auto-select the renderer (Attempt WebGL first, with fallback to Canvas)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ywu9hiDaaqI5In-Ddmux4","name":"CANVAS","brief":"","defaultValue":"0","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                constant to select the HTML5 Canvas renderer

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o6v9SpfqF65OqAxqC8TI5","name":"version","brief":"","defaultValue":"\"__VERSION__\"","readonly":true,"scope":"static","type":"PropertyDoc","description":"

                current melonJS version

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HzNdHqVD0qXfCMiSSpC_2","name":"WEBGL","brief":"","defaultValue":"1","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                constant to select select the WebGL renderer

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"phkF026n9yElS_xn_hSZv","name":"imgList","brief":"

                where all preloaded content is cached

                ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zht6RexeP62ErJgZrNMNH","name":"initialized","brief":"","defaultValue":"false","readonly":true,"type":"PropertyDoc","description":"

                a flag indicating that melonJS is fully initialized

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Me58SLPCQmc70t1MHdO0r","name":"parserInitialized","brief":"

                keep track if parsers were registered

                ","defaultValue":"false","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ROb-cvMAkdKsZxvfKn7dg","name":"parsers","brief":"

                list of parser function for supported format type

                ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2_cQGyQqv7ajh_GRFjUHK","name":"skipAutoInit","brief":"","defaultValue":"false","see":["boot"],"type":"PropertyDoc","description":"

                disable melonJS auto-initialization

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nv0XpqlcxBNjajZ4ODut6","name":"boot","brief":"","access":"public","see":["skipAutoInit"],"type":"FunctionDoc","description":"

                initialize the melonJS library.\nthis is automatically called unless me.skipAutoInit is set to true,\nto allow asynchronous ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5mB43b7jTADdXKk7s1BX4","name":"consoleHeader","brief":"","type":"FunctionDoc","description":"

                display information

                ","params":[{"identifier":"app","optional":false,"description":"

                the game application instance calling this function

                ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"hTlTgXQfaTkSXBnCsNkRd","name":"warning","brief":"","type":"FunctionDoc","description":"

                display a deprecation warning in the console

                ","params":[{"identifier":"deprecated","optional":false,"description":"

                deprecated class,function or property name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"replacement","optional":false,"description":"

                the replacement class, function, or property name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"version","optional":false,"description":"

                the version since when the lass,function or property is deprecated

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"Nd8w3a8t4Xn7z688QDfXt","name":"onresize","brief":"","access":"private","type":"FunctionDoc","description":"

                callback for window resize event

                ","params":[{"identifier":"game","optional":false,"description":"

                the game application instance triggering the resize

                ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qQu0NQIPwRA9hmUleFPy9","name":"scale","brief":"","access":"private","type":"FunctionDoc","description":"

                scale the "displayed" canvas by the given scalar.\nthis will modify the size of canvas element directly.\nOnly use...","params":[{"identifier":"game","optional":false,"description":"

                the game application instance triggering the resize

                ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                x scaling multiplier

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                y scaling multiplier

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},"registry":{"pkg-IFkvaCA6coU3F2mhfZxGV":{"uri":"/melonJS/docs/melonjs.html"},"-5PG-ef4m_sfcGpmVrmiO":{"uri":"/melonJS/docs/melonjs/audio.html"},"qG3Ynj2qS-JiNscDNKrLo":{"uri":"/melonJS/docs/melonjs/audio.html#stopOnAudioError"},"x5mFoDzZmcK5TqcoM6aP6":{"uri":"/melonJS/docs/melonjs/audio/disable.html"},"aNi6GU9O79H6bDlG1OXsa":{"uri":"/melonJS/docs/melonjs/audio/enable.html"},"Yu9Z-gIiHAw2ioPTvKkaJ":{"uri":"/melonJS/docs/melonjs/audio/fade.html"},"CQdc-tOJmKdkBHDYn_tU7":{"uri":"/melonJS/docs/melonjs/audio/getCurrentTrack.html"},"jN03SktoqasxSkydxrvyB":{"uri":"/melonJS/docs/melonjs/audio/getVolume.html"},"L4HFTFCIioXEJyc0WpoGm":{"uri":"/melonJS/docs/melonjs/audio/hasAudio.html"},"VzQPqREJiqPsWWCgJmU_l":{"uri":"/melonJS/docs/melonjs/audio/hasFormat.html"},"MOY2Gp7uI4j3y601UQjB_":{"uri":"/melonJS/docs/melonjs/audio/init.html"},"4oOxb9J5MxXUV_UP763a-":{"uri":"/melonJS/docs/melonjs/audio/load.html"},"6ca1YN7WoBx71FkL8MUgl":{"uri":"/melonJS/docs/melonjs/audio/mute.html"},"3In_CN1XyNIRofz4xj3_9":{"uri":"/melonJS/docs/melonjs/audio/muteAll.html"},"zadumn4dtMyK80M79JrUQ":{"uri":"/melonJS/docs/melonjs/audio/muted.html"},"rnf5ydDvcud9J4v5ybRG4":{"uri":"/melonJS/docs/melonjs/audio/pause.html"},"CStOoHDIOA8rOlcWu3cYg":{"uri":"/melonJS/docs/melonjs/audio/pauseTrack.html"},"FvG6DfF4SZEh3L_L512av":{"uri":"/melonJS/docs/melonjs/audio/play.html"},"TOgAdzdsqXolD91zx_24U":{"uri":"/melonJS/docs/melonjs/audio/playTrack.html"},"TycP9iPSOs9SVhiCe5Vuq":{"uri":"/melonJS/docs/melonjs/audio/rate.html"},"0nrVQ0e_PBCeMk503HTrL":{"uri":"/melonJS/docs/melonjs/audio/resume.html"},"uwGg3ecgcDi2O4c1a9fiO":{"uri":"/melonJS/docs/melonjs/audio/resumeTrack.html"},"7qvPgFUTHc7OlF80jruaU":{"uri":"/melonJS/docs/melonjs/audio/seek.html"},"2IwErxQ6uq2o-1nVWsFo3":{"uri":"/melonJS/docs/melonjs/audio/setVolume.html"},"KlZ0P3_I5VU_Ovqei994A":{"uri":"/melonJS/docs/melonjs/audio/stop.html"},"f4x09VWB0lmNjQx7tyM78":{"uri":"/melonJS/docs/melonjs/audio/stopTrack.html"},"N38GUuk2YEHssWMHIn7ky":{"uri":"/melonJS/docs/melonjs/audio/unload.html"},"GOnTPDulXcI1RqGesMrbB":{"uri":"/melonJS/docs/melonjs/audio/unloadAll.html"},"VG10yNcV30uxMJwkqYILB":{"uri":"/melonJS/docs/melonjs/audio/unmute.html"},"OYrvd2jCFsajYsMnAJSvf":{"uri":"/melonJS/docs/melonjs/audio/unmuteAll.html"},"2O864asKnjQLbLKDUq-C-":{"uri":"/melonJS/docs/melonjs/collision.html"},"LeeXMejnkLmzOXoKyq_Zl":{"uri":"/melonJS/docs/melonjs/collision/types.html"},"Wf2vlaqpwa5IK4wZ05PbY":{"uri":"/melonJS/docs/melonjs/collision/types.html#ACTION_OBJECT"},"1QwaubUpwQdaQ0gyeeSx5":{"uri":"/melonJS/docs/melonjs/collision/types.html#ALL_OBJECT"},"K2XEK-bvTMJ6kpAXBHiot":{"uri":"/melonJS/docs/melonjs/collision/types.html#COLLECTABLE_OBJECT"},"fi2NOAqP-syADhAd_F_0z":{"uri":"/melonJS/docs/melonjs/collision/types.html#ENEMY_OBJECT"},"QDPyDkDR-oJySg_M_NAoH":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT"},"ly7CVQMVbMHK6TBjHoaI8":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT_"},"3tmEDCxVGuf4CAYecB5Vd":{"uri":"/melonJS/docs/melonjs/collision/types.html#NPC_OBJECT"},"IQw-JDhnfubKQS71qxwXw":{"uri":"/melonJS/docs/melonjs/collision/types.html#PLAYER_OBJECT"},"UyBomKBWuL0mgG88R-Wg6":{"uri":"/melonJS/docs/melonjs/collision/types.html#PROJECTILE_OBJECT"},"n4Nz6gNfuUBGuRPVs0o_L":{"uri":"/melonJS/docs/melonjs/collision/types.html#USER"},"Mq2--N1kGH1on_PKoREbh":{"uri":"/melonJS/docs/melonjs/collision/types.html#WORLD_SHAPE"},"rXExQSTLefx50pW7qRO-J":{"uri":"/melonJS/docs/melonjs/collision.html#maxChildren"},"iz-xC0kGDR9iEqHgOOKte":{"uri":"/melonJS/docs/melonjs/collision.html#maxDepth"},"QTZhyGZDEDC5jEMZiaa1i":{"uri":"/melonJS/docs/melonjs/collision.html#rayCast"},"kIcRkMrRTB8DEePGe6Kfp":{"uri":"/melonJS/docs/melonjs/device.html"},"MgnEcV4jHfblF0Fsa4jaj":{"uri":"/melonJS/docs/melonjs/device/platform.html"},"sLb-RYIUh24GBlA0NU5aa":{"uri":"/melonJS/docs/melonjs/device/platform.html#android"},"RMKmKBEzj6jBprPTi1khP":{"uri":"/melonJS/docs/melonjs/device/platform.html#android2"},"XcyN1orMl3dGibchOM3sO":{"uri":"/melonJS/docs/melonjs/device/platform.html#BlackBerry"},"oA5jsHuv-AgQ4WT4qYCMV":{"uri":"/melonJS/docs/melonjs/device/platform.html#chromeOS"},"oRNO0kL3Xxjom94um7nsL":{"uri":"/melonJS/docs/melonjs/device/platform.html#ejecta"},"iFEa6W0q5VE-O_GOWBUxP":{"uri":"/melonJS/docs/melonjs/device/platform.html#iOS"},"REK0sjwRapNW6JDnEtmQS":{"uri":"/melonJS/docs/melonjs/device/platform.html#isMobile"},"PzcyhAnjdF5fDEVBiuEgm":{"uri":"/melonJS/docs/melonjs/device/platform.html#isWeixin"},"EJIN2msYIhjEd7TSq8fU_":{"uri":"/melonJS/docs/melonjs/device/platform.html#Kindle"},"AEJ66dLkiEQV_8E2nAYkv":{"uri":"/melonJS/docs/melonjs/device/platform.html#linux"},"sR6bzjlGPCIAiIuy49bMX":{"uri":"/melonJS/docs/melonjs/device/platform.html#nodeJS"},"8l-c-5APCUyiClrq4saB6":{"uri":"/melonJS/docs/melonjs/device/platform.html#ua"},"Twor9CQvopKAbldPpg0mg":{"uri":"/melonJS/docs/melonjs/device/platform.html#wp"},"H16E4zAsndg5JaIy4PboB":{"uri":"/melonJS/docs/melonjs/device.html#accelerationX"},"2nvyd2wvDAm_-VgtDJHIh":{"uri":"/melonJS/docs/melonjs/device.html#accelerationY"},"glWrEaItTj7DdroMsm-JC":{"uri":"/melonJS/docs/melonjs/device.html#accelerationZ"},"o7tXlazNcsdk7S7u_B-j-":{"uri":"/melonJS/docs/melonjs/device.html#alpha"},"JpfL0TDpiolPo13m-Qydz":{"uri":"/melonJS/docs/melonjs/device.html#autoFocus"},"R0wJjObq1fzygNV7otRJC":{"uri":"/melonJS/docs/melonjs/device.html#beta"},"SmiSJHbpgYUF-qROZV-fu":{"uri":"/melonJS/docs/melonjs/device.html#devicePixelRatio"},"VKp6KTskYaY9Q_XnVbXN5":{"uri":"/melonJS/docs/melonjs/device.html#gamma"},"9kdUizZqU1aWEJgKNOTNs":{"uri":"/melonJS/docs/melonjs/device.html#hasAccelerometer"},"pDRXpRucKCWfxsEeoXYuV":{"uri":"/melonJS/docs/melonjs/device.html#hasDeviceOrientation"},"ZhLkqdYTybNeU6QVeyDae":{"uri":"/melonJS/docs/melonjs/device.html#hasFullscreenSupport"},"5sUbjCJ9fuEOw4cEoZq8e":{"uri":"/melonJS/docs/melonjs/device.html#hasHTML5Audio"},"AuC0inpaEEBiWaG3K1IY5":{"uri":"/melonJS/docs/melonjs/device.html#hasPointerLockSupport"},"HtPXJtz72f9bNr_TDjOe9":{"uri":"/melonJS/docs/melonjs/device.html#hasWebAudio"},"9dyzAra0PSC_-gwCB_sOt":{"uri":"/melonJS/docs/melonjs/device.html#isMobile"},"izNYos6SDW2Xf7KpzvvPB":{"uri":"/melonJS/docs/melonjs/device.html#language"},"pZvZQGTBALNM_-8ztCL5j":{"uri":"/melonJS/docs/melonjs/device.html#localStorage"},"iAvBiIJX5dKlfM8BjGK9d":{"uri":"/melonJS/docs/melonjs/device.html#maxTouchPoints"},"QKtsfe4eFH1aoE_oojfqp":{"uri":"/melonJS/docs/melonjs/device.html#nativeBase64"},"gAEFod4Cnm00PFC8Lk8wI":{"uri":"/melonJS/docs/melonjs/device.html#offscreenCanvas"},"BbKdmb8fChjUK0UbN3VQ5":{"uri":"/melonJS/docs/melonjs/device.html#pauseOnBlur"},"fuTE6ZDcNuqwnXNUzuou0":{"uri":"/melonJS/docs/melonjs/device.html#platform"},"h8c-DIfXgDU8eN5rozxc1":{"uri":"/melonJS/docs/melonjs/device.html#pointerEvent"},"vs8PhmAdRMiyVzijsCLKQ":{"uri":"/melonJS/docs/melonjs/device.html#resumeOnFocus"},"l3E-CBAr5LFLLzfQp0TCE":{"uri":"/melonJS/docs/melonjs/device.html#screenOrientation"},"mj4gODkN2l10GfnTd9_zc":{"uri":"/melonJS/docs/melonjs/device.html#sound"},"zxSV-1qdoXSgaiJE0Opq2":{"uri":"/melonJS/docs/melonjs/device.html#stopOnBlur"},"8lqVWrSqC97WnRh4krKgP":{"uri":"/melonJS/docs/melonjs/device.html#touch"},"Dj5rGuwDXKz8AmgCcaE39":{"uri":"/melonJS/docs/melonjs/device.html#touchEvent"},"SthpEteJWMlHbcwAPPP6G":{"uri":"/melonJS/docs/melonjs/device.html#wheel"},"b3Mdhk_nakACLAP7fpdvX":{"uri":"/melonJS/docs/melonjs/device/enableSwipe.html"},"EO6qaDrQeio38-Ao6CxmX":{"uri":"/melonJS/docs/melonjs/device/exitFullscreen.html"},"aN8rH8tNrLbJRfcRQIdbh":{"uri":"/melonJS/docs/melonjs/device/focus.html"},"JZR-jZzHIuaHQdYNVi4t-":{"uri":"/melonJS/docs/melonjs/device/getElement.html"},"QbNH-ruNj6zkTWli76QPP":{"uri":"/melonJS/docs/melonjs/device/getElementBounds.html"},"MPvBKZxRx5QP593grG6Aq":{"uri":"/melonJS/docs/melonjs/device/getParentBounds.html"},"PoAVauPRFZEr4XeBj95AL":{"uri":"/melonJS/docs/melonjs/device/getParentElement.html"},"-asSFJ6_qx--ZN1OZ6F9U":{"uri":"/melonJS/docs/melonjs/device/getScreenOrientation.html"},"deS6DAXFNYAiYAMzKia9Y":{"uri":"/melonJS/docs/melonjs/device/getStorage.html"},"IYOBjjiRt-fOQuPTAjWLn":{"uri":"/melonJS/docs/melonjs/device/isFullscreen.html"},"MJVjmBEX4V3O1a2dZR8jZ":{"uri":"/melonJS/docs/melonjs/device/isLandscape.html"},"AZcteZIcQfw3D-jBpOL7d":{"uri":"/melonJS/docs/melonjs/device/isPortrait.html"},"QFJQDgWw5rnGPGIWx1GZ2":{"uri":"/melonJS/docs/melonjs/device/isWebGLSupported.html"},"-OqPH9EsJzKuxmd0eY_FI":{"uri":"/melonJS/docs/melonjs/device/lockOrientation.html"},"JidIrj4_YBsXkCi_wWM_P":{"uri":"/melonJS/docs/melonjs/device/onReady.html"},"ihQOq_Tggx_m6yZtBL0BD":{"uri":"/melonJS/docs/melonjs/device/requestFullscreen.html"},"Vvz4mPcmqX0ZbGrIKjlzY":{"uri":"/melonJS/docs/melonjs/device/unlockOrientation.html"},"4PwQ6qBGP57lZVMHZuypL":{"uri":"/melonJS/docs/melonjs/device/unwatchAccelerometer.html"},"Q6ndmK1EJb1-nxYZoNxcD":{"uri":"/melonJS/docs/melonjs/device/unwatchDeviceOrientation.html"},"_DAAGwlaQpmDf2IuReYYM":{"uri":"/melonJS/docs/melonjs/device/vibrate.html"},"8p-U1FP6O0Wvw-mZPUM75":{"uri":"/melonJS/docs/melonjs/device/watchAccelerometer.html"},"EK3x2ddu3fPD2NgZefRLr":{"uri":"/melonJS/docs/melonjs/device/watchDeviceOrientation.html"},"9REz93WMxNgkDKUriaU6v":{"uri":"/melonJS/docs/melonjs/event.html"},"fAo-9HpQDPlHIqgUhDk8t":{"uri":"/melonJS/docs/melonjs/event.html#BLUR"},"qsSmFiiGR-M2xxq6e4KTx":{"uri":"/melonJS/docs/melonjs/event.html#BOOT"},"IdQ29eSCreTdk8ZXnv2ew":{"uri":"/melonJS/docs/melonjs/event.html#CANVAS_ONRESIZE"},"MJhcayepkJhYTxo4_j8D8":{"uri":"/melonJS/docs/melonjs/event.html#DOM_READY"},"3B2UGyrO7FcTJyuEs8Dyl":{"uri":"/melonJS/docs/melonjs/event.html#DRAGEND"},"1H3_FZNbvoZBKDQbSVI4L":{"uri":"/melonJS/docs/melonjs/event.html#DRAGSTART"},"l5q9fZZmha9G3NElFq-gw":{"uri":"/melonJS/docs/melonjs/event.html#FOCUS"},"Z5OmTa2E2xsqCWzaZfGEz":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_DRAW"},"nL14WpEDRoEMxLfvvSkCf":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_UPDATE"},"N2FgFwc7Kx6Qxt6OOi2ja":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_DRAW"},"R4KVa95tJBAIDMxGrYZ9X":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_UPDATE"},"18zZYw08ME5axfaBlHAij":{"uri":"/melonJS/docs/melonjs/event.html#GAME_INIT"},"rcyDHmP0aglIhGuFxZ2XF":{"uri":"/melonJS/docs/melonjs/event.html#GAME_RESET"},"o3IoxfVjhYxTg1c_dA4ru":{"uri":"/melonJS/docs/melonjs/event.html#GAME_UPDATE"},"ULfGcAF8PBId6LgPic0V-":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_CONNECTED"},"SXpkNJoH_nCFK-idyRsau":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_DISCONNECTED"},"8HcsUxL1U1HDbbWpn5ZGJ":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_UPDATE"},"e7Xgq3KV7q4fl8N90nyeF":{"uri":"/melonJS/docs/melonjs/event.html#KEYDOWN"},"HdvkhB-25AIqMUvbumcCq":{"uri":"/melonJS/docs/melonjs/event.html#KEYUP"},"HGdjsG1zhu13tbPJt0irY":{"uri":"/melonJS/docs/melonjs/event.html#LEVEL_LOADED"},"DP7rReiZmQzPclsf-e6NI":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_COMPLETE"},"zy5oT1lxKX8aOInHJdOZ-":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_PROGRESS"},"syJh79zsEAwvK0FI-hXqN":{"uri":"/melonJS/docs/melonjs/event.html#ONCONTEXT_RESTORED"},"t5jy9d2da00LP3cu_T0Bw":{"uri":"/melonJS/docs/melonjs/event.html#POINTERLOCKCHANGE"},"u9r9k8vb5z_ut8vbIjTDG":{"uri":"/melonJS/docs/melonjs/event.html#POINTERMOVE"},"8QA3hHw4YzWNqKvOY_WKb":{"uri":"/melonJS/docs/melonjs/event.html#STAGE_RESET"},"BN0BJTwxzOKSBUWBp1Uy1":{"uri":"/melonJS/docs/melonjs/event.html#STATE_CHANGE"},"SyYX1-H9OobMulVJ1H7Mn":{"uri":"/melonJS/docs/melonjs/event.html#STATE_PAUSE"},"RRRk8vGJroAE81d8tIPmK":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESTART"},"IxkFF_iQGL__O5aFKH54J":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESUME"},"gBgVmLvfxnmviZNh54mu2":{"uri":"/melonJS/docs/melonjs/event.html#STATE_STOP"},"uPYNyPItP2aDo6O8eWMoe":{"uri":"/melonJS/docs/melonjs/event.html#TICK"},"-fem3Z65e3-cSdphxNSBM":{"uri":"/melonJS/docs/melonjs/event.html#VIDEO_INIT"},"TvBMbQMcU47nP4OTd419M":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONCHANGE"},"FOwvAl8VuqmYGFDIxTc7Z":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONRESIZE"},"eJJ9ToqZ9GcGBHuJ6JKyU":{"uri":"/melonJS/docs/melonjs/event.html#WEBGL_ONCONTEXT_LOST"},"9txsBT1ueENYs5AbVABJz":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONORIENTATION_CHANGE"},"3cgYeaQEnNzB5oD4RUiB9":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONRESIZE"},"Yn7JnvdHrDtc5vcsJNxEf":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONSCROLL"},"zjYPl3gK51Jm_GFrrds4V":{"uri":"/melonJS/docs/melonjs/event.html#WORLD_STEP"},"32LajTx86_GH51RYVEj5B":{"uri":"/melonJS/docs/melonjs/event/emit.html"},"DOqoYToyFxzFaycxulv8f":{"uri":"/melonJS/docs/melonjs/event/off.html"},"FW-WeW1CJoducigIcpgUq":{"uri":"/melonJS/docs/melonjs/event/on.html"},"XpKoxUZNmya9oXisZa37c":{"uri":"/melonJS/docs/melonjs/event/once.html"},"27zlRJqRhNdt30nYzOVTG":{"uri":"/melonJS/docs/melonjs/game.html"},"hQQJakf0pjluUvC9MNuwb":{"uri":"/melonJS/docs/melonjs/input.html"},"_P339HXD9PZxveU0_daLc":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD.html"},"Kur_TWmAlSMyoGwaY8WXA":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/AXES.html"},"g64JpioS8FDqsaGi4k-nO":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/BUTTONS.html"},"BEkGjT-TKiGEkfRHLHzmu":{"uri":"/melonJS/docs/melonjs/input/KEY.html"},"edp1XkFJNHGkomG8Gc-bJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#A"},"e1lZ0lY8TkY60-rd347sL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ADD"},"VRCeRjF7inGwHGspmFUFO":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ALT"},"u4oly_ZmShONp3P2f5KS9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#B"},"kphzkhUT89mNTbMrXAEjs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#BACK_SLASH"},"H8ee1545QPNx7XzpFqDFf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#C"},"JRUv4SJhrLMFL1wMFF2s2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CAPS_LOCK"},"WPfhmG6LCBXcdrR2Q0AR_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CLOSE_BRACKET"},"d6g2HLtM3COYzpMhxFedG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#COMMA"},"JbpTs0SNLGyFCMpwdwsDG":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CTRL"},"qy32gN3Y1Ef4tLrWGdlD9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#D"},"QUogL1ZYiE7qMjG3xRrgn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DECIMAL"},"oDmjUkAQDctwY89m6Vv8L":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DELETE"},"ro3p50X5OmocKoauWvwIs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DIVIDE"},"jZSKgMzkAZenG-_WfPOMm":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DOWN"},"VRbp5iog3U9Fzh8YhlInP":{"uri":"/melonJS/docs/melonjs/input/KEY.html#E"},"m8uhY8oLcPoraWfwQe87p":{"uri":"/melonJS/docs/melonjs/input/KEY.html#END"},"F0T6G3_1E85fiuqMN2Xk3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ENTER"},"1CbNkgflH5P18ndPp9LPt":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ESC"},"2e_WlPFXBC7SX1KelhCEo":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F"},"BB6az2MG_2rW_-8gX_fsF":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F1"},"0azb8VV3__3FH5JfEP-CA":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F10"},"2KVC2t9WgDHTE4uYUDRFe":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F11"},"fG-VggJ3wEr-KCaX4XpCC":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F12"},"ybmTbxegIxJ2kxQPbmCLf":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F2"},"Z-_QDHJ3pVBQCJkJWq-dl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F3"},"UrSv_kONwCYUoruIw2Md8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F4"},"kBdmYO8crqul6unOXAJ5z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F5"},"2l3il4dvAI4xPX4iJSGni":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F6"},"TpYT1NtWn5aJ7jOUYDr_s":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F7"},"M58Reqi_KHN6cNPCoPJCr":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F8"},"rKPd4Q6-DCEFccVfiZCXF":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F9"},"VgykIEEz68CH2mSHgL3Zi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#FORWAND_SLASH"},"RjgEGn2gfaGBQkD45KjdF":{"uri":"/melonJS/docs/melonjs/input/KEY.html#G"},"PbLQxyLuOl4i1SUpOnbhI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#GRAVE_ACCENT"},"Cbxn1-inkS1Jos_pdi0En":{"uri":"/melonJS/docs/melonjs/input/KEY.html#H"},"gqM_bidhKYJCXpJ9VSGTs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#HOME"},"pGtgUxWn5bgd2d4jagJ0H":{"uri":"/melonJS/docs/melonjs/input/KEY.html#I"},"_LAODMx2lbJAI-5blmrwF":{"uri":"/melonJS/docs/melonjs/input/KEY.html#INSERT"},"lg5Tv1DKHa63Xl2naxAgI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#J"},"0VhCwSxnogyryFDkGD8WP":{"uri":"/melonJS/docs/melonjs/input/KEY.html#K"},"FsOdM25wYXw9QE0AgIcf2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#L"},"Qlcc3lIX8obJAGLahX0PL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#LEFT"},"0skGiH9BJ1hQFEpE0ARMi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#M"},"qDzvkKGwJJKeQjLMlreql":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MINUS"},"CDBG6ndgOFZZH5Yfi2UAa":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MULTIPLY"},"tuOsOUHl_sG98HR_xNqC9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#N"},"xOaojJkIZjb2HXaZet2KW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM_LOCK"},"119TR4Xb9hPWc9WD7pwXy":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM0"},"Xx_tCKyD6NezKWupYDvzI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM1"},"y_7B-H4h5vd6LQRsZcRHp":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM2"},"XMGMM4Rg51fmVZW5BL88t":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM3"},"6VHFAg7dbAg5H5phVhKdQ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM4"},"z2H3v1YgY2UNrhF34wxnk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM5"},"eePDFfjWLAbYh0SV6vmy0":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM6"},"YhN5fD2hD-yri0LIjuix2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM7"},"pXarD7zayFVLH4msiIYls":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM8"},"dl1r3QXgFnhCRS_74ldc7":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM9"},"WfBHMoFFeApfw3MrcScL4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD0"},"m-jNID13ua2fLeXyeyg8C":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD1"},"G_eDFW9m0-h2G3uLXui_g":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD2"},"TSg3L3BwPQWA8eilalkfR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD3"},"aBFqp_mO7cQ4-JubZbIy0":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD4"},"-xRmIeNMiLAO6T9uxIv_h":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD5"},"MwVnaeR4PoLPg01VbGp4g":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD6"},"WNnL82svI-iZbvMl-gg_q":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD7"},"HOvShV7ZeP6woXj51lJa5":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD8"},"Buwu4OJkvXYIndr8zTxC8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD9"},"ebtvzGdh-p_ynAb6ZKCD7":{"uri":"/melonJS/docs/melonjs/input/KEY.html#O"},"3gTCZ2qOPCx-EBSnQxH-B":{"uri":"/melonJS/docs/melonjs/input/KEY.html#OPEN_BRACKET"},"C7iQ4N188ipLx3WZnSTcV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#P"},"f7s8wBLo9QBARG4nPyMcu":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_DOWN"},"4a19UbR1nwlpFvmg6h3WJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_UP"},"8Ci5-wZqN1w4KLzrTq7uL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAUSE"},"ZyZcpOluQt1QGFM5FJhB8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PERIOD"},"HPCDMRIWnZ_rJSuCS0Tnn":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PLUS"},"bv4thIz0tqUIgzP6Lxcl4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PRINT_SCREEN"},"zX8feM0uifpICnhBYtR-Y":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Q"},"rXq84JKlyc4moRwX6RDZ7":{"uri":"/melonJS/docs/melonjs/input/KEY.html#R"},"Y6NyE9D88qhhCCHLayCCR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#RIGHT"},"6GufBjYijF-zNTCR7Jkce":{"uri":"/melonJS/docs/melonjs/input/KEY.html#S"},"tfLAKau0W8cFSO_U6c9pW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SCROLL_LOCK"},"0Pz97E-yDw1PSTTlweOk4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SEMICOLON"},"3UwXKmX34eNrLpkOA2uLM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SHIFT"},"KO-i7G7TflmFAmoAhmxEY":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SINGLE_QUOTE"},"FqBex9rn8yso-iV_i6oDW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SPACE"},"fZAAcxyxXma6D2Sj9txQg":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SUBSTRACT"},"gn-kIuFCFKgZNt20Ml6sa":{"uri":"/melonJS/docs/melonjs/input/KEY.html#T"},"zCvWQVCNT-FFGII17Vo_c":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TAB"},"4_QTPq7NK85zJwMbpKUET":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TILDE"},"3xTGoYJkhFn7jL8v2ohO1":{"uri":"/melonJS/docs/melonjs/input/KEY.html#U"},"a204STRm-5PHRCjPf1t2a":{"uri":"/melonJS/docs/melonjs/input/KEY.html#UP"},"zFUStG4yFX8qB_lXqeU4F":{"uri":"/melonJS/docs/melonjs/input/KEY.html#V"},"IJPlegOTVSC2ycORVyCZI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#W"},"vS6kPTAPnYVnQsKINiDEl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#WINDOW_KEY"},"bDy2W0mTls4XW2XOqNB-6":{"uri":"/melonJS/docs/melonjs/input/KEY.html#X"},"BsQrwN5DY0mFx5cT4Np4b":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Y"},"xkuVj1fmOW7E-WpTmEXDj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Z"},"N5rFUTi1j-IlRrEhvQqnl":{"uri":"/melonJS/docs/melonjs/input.html#keyBoardEventTarget"},"aQuuSJAZ4HT8o5wY9xsi4":{"uri":"/melonJS/docs/melonjs/input.html#locked"},"vPAZA8wqvyeUnUGofTfQf":{"uri":"/melonJS/docs/melonjs/input.html#pointer"},"h442sHEpMi1aCRaqYX-nA":{"uri":"/melonJS/docs/melonjs/input.html#pointerEventTarget"},"YoKF2qlnYrnYQJ_xcFw_b":{"uri":"/melonJS/docs/melonjs/input.html#preventDefault"},"2SWOgtQv6sh3t_UvetDwh":{"uri":"/melonJS/docs/melonjs/input.html#setGamepadMapping"},"KmbOF6acbrei5msqkeTxC":{"uri":"/melonJS/docs/melonjs/input.html#throttlingInterval"},"FGH80ygbduTi86ird1I-S":{"uri":"/melonJS/docs/melonjs/input/bindGamepad.html"},"NVON9fkvXhD9KKhZrX39i":{"uri":"/melonJS/docs/melonjs/input/bindKey.html"},"kjnvKS6NaRXS1D1_ui1_M":{"uri":"/melonJS/docs/melonjs/input/bindPointer.html"},"WtEaQR9vWqgodVjw7nUAM":{"uri":"/melonJS/docs/melonjs/input/exitPointerLock.html"},"KIF-GPGsVFB8UyjbuXxBX":{"uri":"/melonJS/docs/melonjs/input/getBindingKey.html"},"ESDo_anDDL3ci49loEuca":{"uri":"/melonJS/docs/melonjs/input/globalToLocal.html"},"kbCe0drEaalqU9ygXGuUY":{"uri":"/melonJS/docs/melonjs/input/hasActiveEvents.html"},"6GdsFZkWbbwB-UEdzWYBE":{"uri":"/melonJS/docs/melonjs/input/hasRegisteredEvents.html"},"aBt0Ad2dzLSNsZZK_1gqS":{"uri":"/melonJS/docs/melonjs/input/isKeyPressed.html"},"CQ5sYRcaIEIODzWFzi7rN":{"uri":"/melonJS/docs/melonjs/input/keyStatus.html"},"rf5GWIy0GdIJVEC69k3Ka":{"uri":"/melonJS/docs/melonjs/input/registerPointerEvent.html"},"s68PxTEYh-xyGqndEtSYy":{"uri":"/melonJS/docs/melonjs/input/releaseAllPointerEvents.html"},"OPVt65YfCEeJha5s0HYc1":{"uri":"/melonJS/docs/melonjs/input/releasePointerEvent.html"},"EjBhhRNOKNuZMOy09dswK":{"uri":"/melonJS/docs/melonjs/input/requestPointerLock.html"},"NbB3LY8bZF2-kJKoXr8aW":{"uri":"/melonJS/docs/melonjs/input/setGamepadDeadzone.html"},"mAcb9m-QZgGeowXP30HJB":{"uri":"/melonJS/docs/melonjs/input/setTouchAction.html"},"9z9ilzROtWZrfMZWHFMSH":{"uri":"/melonJS/docs/melonjs/input/triggerKeyEvent.html"},"b7MF1eRpZ-VxJi1v_z_fV":{"uri":"/melonJS/docs/melonjs/input/unbindGamepad.html"},"_3F3SPM_ocHy3iwfzl6vj":{"uri":"/melonJS/docs/melonjs/input/unbindKey.html"},"uvbTX138_oWvR1gdPMZj0":{"uri":"/melonJS/docs/melonjs/input/unbindPointer.html"},"uodFtc1ttkJexEJuyPZCC":{"uri":"/melonJS/docs/melonjs/input/unlockKey.html"},"Ugoxnucl_WW_Qyxch_j_O":{"uri":"/melonJS/docs/melonjs/level.html"},"tnzJ88rro5Jun6GuKlDTS":{"uri":"/melonJS/docs/melonjs/level.html#add"},"Q8wOqIeO1E3FJnLzFiu4e":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevel"},"Jqb6rFU0si21p3MtHrQJ9":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevelId"},"jZ7PmqLYbG20CxG9leN2P":{"uri":"/melonJS/docs/melonjs/level.html#levelCount"},"6NPvzXkx8XDuzBFogO2dA":{"uri":"/melonJS/docs/melonjs/level.html#load"},"c-wdZHvhEnB775_zEHONB":{"uri":"/melonJS/docs/melonjs/level.html#next"},"oz9rTiQILSfd3Z6uPVv3z":{"uri":"/melonJS/docs/melonjs/level.html#previous"},"mUeRSbQYdp27qKRHHgLoP":{"uri":"/melonJS/docs/melonjs/level.html#reload"},"feIw2ZpU8pEiPuPwgSdSr":{"uri":"/melonJS/docs/melonjs/loader.html"},"5yxmkbpFENMvEbAja01E0":{"uri":"/melonJS/docs/melonjs/loader/Asset.html"},"x25pafz5ddEvLwbc0CrQ3":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#data"},"Fa3-1ikPRukUmciTfnE3V":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#name"},"YXwk4CrWVGdL_BYnAFvE2":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#src"},"x8um8Xw7Diner2Pe7RDf2":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#stream"},"m-MfCr-0aA_BtcICR1A3a":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#type"},"5ATRjhORcYZEW7OreFy6v":{"uri":"/melonJS/docs/melonjs/loader.html#crossOrigin"},"ojQl1RQ94GP0NXtzSnPkW":{"uri":"/melonJS/docs/melonjs/loader.html#onload"},"D2otuTPEeWLd4cruc3L9W":{"uri":"/melonJS/docs/melonjs/loader.html#onProgress"},"oZ6GoqjOlItWksmt_yt6j":{"uri":"/melonJS/docs/melonjs/loader.html#withCredentials"},"wn2P4CmTYp5HPSHqJCREp":{"uri":"/melonJS/docs/melonjs/loader/getBinary.html"},"RFSOxWERvUy2yNTgCtX8m":{"uri":"/melonJS/docs/melonjs/loader/getImage.html"},"bYDisHYw9Jey_Qs2mAnk2":{"uri":"/melonJS/docs/melonjs/loader/getJSON.html"},"cDT7PlP10FhlOsFMsI0rM":{"uri":"/melonJS/docs/melonjs/loader/getTMX.html"},"VFpVvrFWxBvSI_VNx1VQt":{"uri":"/melonJS/docs/melonjs/loader/load.html"},"uzyhoWH1B5cDhFckw56pM":{"uri":"/melonJS/docs/melonjs/loader/preload.html"},"T-GsiWvnogxDExBN7JhTc":{"uri":"/melonJS/docs/melonjs/loader/setBaseURL.html"},"zLeY0Nnp3qhlQSJsO4nZn":{"uri":"/melonJS/docs/melonjs/loader/setParser.html"},"ofi6Em4lGywf8gH4-YjYY":{"uri":"/melonJS/docs/melonjs/loader/unload.html"},"aLuu4UcXxjImwlb3dbq-z":{"uri":"/melonJS/docs/melonjs/loader/unloadAll.html"},"6uOZhgltQbSTm-rQZhO9c":{"uri":"/melonJS/docs/melonjs/Math.html"},"YKvJ_THYFCLjrqT9b6quQ":{"uri":"/melonJS/docs/melonjs/Math.html#DEG_TO_RAD"},"ImeM4n3NYloA1Je9LM8Bb":{"uri":"/melonJS/docs/melonjs/Math.html#EPSILON"},"q6MNwLTxG6ROgrItJBJAM":{"uri":"/melonJS/docs/melonjs/Math.html#ETA"},"fiJYG9eR4mOw3MXWKKNYb":{"uri":"/melonJS/docs/melonjs/Math.html#RAD_TO_DEG"},"CWPALs8jY4_PFJdbRdRHg":{"uri":"/melonJS/docs/melonjs/Math.html#TAU"},"EnUrS7jIPiMyPy4SA7Epu":{"uri":"/melonJS/docs/melonjs/Math/clamp.html"},"qG9YKXO_RtHaZIJFm-sWb":{"uri":"/melonJS/docs/melonjs/Math/degToRad.html"},"Bj38FB_JB_N1Obv2lzuhM":{"uri":"/melonJS/docs/melonjs/Math/isPowerOfTwo.html"},"kxXJYrk7FBrbljkgrYjxJ":{"uri":"/melonJS/docs/melonjs/Math/nextPowerOfTwo.html"},"hzgfGVu0hcyOMuU8qCL5m":{"uri":"/melonJS/docs/melonjs/Math/radToDeg.html"},"iWhQmzr7dvPgD7uvcwig5":{"uri":"/melonJS/docs/melonjs/Math/random.html"},"nPj6eesEo3XFF-xixrxWj":{"uri":"/melonJS/docs/melonjs/Math/randomFloat.html"},"rLO1R_ufwdSTMqxwn-73-":{"uri":"/melonJS/docs/melonjs/Math/round.html"},"m9a4yFdJKA15wiQ37HeMX":{"uri":"/melonJS/docs/melonjs/Math/toBeCloseTo.html"},"Wn51l9ueR_Fhdv2Ec6q0S":{"uri":"/melonJS/docs/melonjs/Math/weightedRandom.html"},"MlFk_4XAEeDocuCYfhMBU":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html"},"ELHJrtxoZWB1Wu2oMYYHs":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angle"},"_7SxhwCogxbZ2-z17WARb":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angleVariation"},"I-k_TJcJo-lR4xlaSpkTw":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#blendMode"},"D3AhoFgKYVl2M7dyDizae":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#duration"},"9lBqmtORKd-URl6AEqeWZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#floating"},"4rzJ-rNb8gtxIiSI_fSSS":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#followTrajectory"},"JgzNk4V9PPyRFvimflehZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#framesToSkip"},"zdEEpK7C1Sa1EXElU6p7b":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#frequency"},"It7ykPzs86aMAO0uWZeoJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#gravity"},"IEAfaITOdH2eLG-JEoIPh":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#height"},"3yJnyJkGkjBsFWyPohrFS":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#image"},"7IeAkg1RzmYs3K3jEJ3vo":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxEndScale"},"AEecIh-BeZbpGabDQfqpj":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxLife"},"zGvWtLxQou5bh0VuqeewV":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxParticles"},"gwqU8eG_6KU6aK-0oGXYw":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxRotation"},"vNm-4eyk0O0_6A8_S9Kmj":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxStartScale"},"g_MdwEuzvBwJjuK2orgz7":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minEndScale"},"SX2fntpy0PvQ86hvglLTt":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minLife"},"1tpFrZQ3gFwyPAkfBAXKE":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minRotation"},"x_WAbgMLxn_db6h-2EGn3":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minStartScale"},"s5nuiT_X5rQNqnkx_orUw":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#onlyInViewport"},"Yh8raMzvjCYUOzqY09aWw":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speed"},"J1TgAD90nMB787IMuAqBZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speedVariation"},"ZZjPX3CS16BxARxf4-KDc":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureAdditive"},"H2U7GeElYfLT-60iSw2OY":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureSize"},"fUMqi3gO3aVdv9OD4u0ps":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#tint"},"JpwiS72IDtaO-L0lWGTTS":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#totalParticles"},"BlUU-axBKoZhkDAKesA54":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#width"},"MbFMJvyQW7UNN-wQmJuYD":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#wind"},"iG05p8trGJRydwJiluy6_":{"uri":"/melonJS/docs/melonjs/plugin.html"},"zS0Ucj_Jz-dRMVRaPPjBd":{"uri":"/melonJS/docs/melonjs/plugin/Base.html"},"TMJTVQy6uq8cnZI7TE_bQ":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#app"},"K09aVi9SDQeWf1SSfEs-i":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#version"},"fjRCaQVVybN08thnDmuj6":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html"},"0DEUHmXPJlMk2cnf0Ndqy":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#app"},"H-RsP7jPzQPORfuHX1Alv":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#version"},"D5DHfFk8pqOWKtKA9LNQS":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#constructor"},"5_xuY9iCovU7OkO64rmAn":{"uri":"/melonJS/docs/melonjs/plugin.html#cache"},"HCU4Pp3nU_QMeUoPWZIwY":{"uri":"/melonJS/docs/melonjs/plugin/get.html"},"7EtH-bY-l7AG7KT6MguVp":{"uri":"/melonJS/docs/melonjs/plugin/patch.html"},"J85DBwAXl-0jk-pOcJs8W":{"uri":"/melonJS/docs/melonjs/plugin/register.html"},"QTHuRTwLlHk-oy2DaVeFW":{"uri":"/melonJS/docs/melonjs/pool.html"},"2mvqXFjx3cc73AKzZ8dDg":{"uri":"/melonJS/docs/melonjs/save.html"},"5dvXw-SsP81SNu0IYFp7j":{"uri":"/melonJS/docs/melonjs/save.html#add"},"fdpHpyBvOn_yTXhh63LDn":{"uri":"/melonJS/docs/melonjs/save.html#remove"},"MJNzcoutfFkDjX5CCd5m3":{"uri":"/melonJS/docs/melonjs/state.html"},"7cMy6gnH8YLGtSIJ4Q_pm":{"uri":"/melonJS/docs/melonjs/state.html#CREDITS"},"mrEeGejxRacSunMr7RypN":{"uri":"/melonJS/docs/melonjs/state.html#DEFAULT"},"whLcCwY0f7wDfGb8pr7hz":{"uri":"/melonJS/docs/melonjs/state.html#GAME_END"},"arU35711Fy_4pLtmfDSsv":{"uri":"/melonJS/docs/melonjs/state.html#GAMEOVER"},"onOt2zCaudax9djyj9nXu":{"uri":"/melonJS/docs/melonjs/state.html#LOADING"},"NRnJ4ma2LLDZIMDetTXIn":{"uri":"/melonJS/docs/melonjs/state.html#MENU"},"3-5QYQRJ5VifaK83J5lwk":{"uri":"/melonJS/docs/melonjs/state.html#PLAY"},"Ym2d9xb0B0XgJvyV0O2bH":{"uri":"/melonJS/docs/melonjs/state.html#READY"},"vO7Y2eT7awG-4nDX0Dw43":{"uri":"/melonJS/docs/melonjs/state.html#SCORE"},"Nq0k1asD-QgsyrR_mAey0":{"uri":"/melonJS/docs/melonjs/state.html#SETTINGS"},"Pdgofx44zd0wzZGcvZjDt":{"uri":"/melonJS/docs/melonjs/state.html#USER"},"KjnY1XsQCPbOW52nJgsMe":{"uri":"/melonJS/docs/melonjs/state.html#change"},"kNnDWX4IoCeEL9ypcZJFh":{"uri":"/melonJS/docs/melonjs/state.html#current"},"taKEt2BE0vbxvAs81ic7i":{"uri":"/melonJS/docs/melonjs/state.html#isCurrent"},"R0dkh-0PTxVOZNYqCjn02":{"uri":"/melonJS/docs/melonjs/state.html#isPaused"},"LeGNaLfVniSlX2Jeb0pZk":{"uri":"/melonJS/docs/melonjs/state.html#isRunning"},"xyyYfPn6rcoCPeKarzSZN":{"uri":"/melonJS/docs/melonjs/state.html#pause"},"cAjptS2231Cnv2NUKc-k3":{"uri":"/melonJS/docs/melonjs/state.html#restart"},"9eZatjjbNdDEh9I6N_bc8":{"uri":"/melonJS/docs/melonjs/state.html#resume"},"6Og-OiRpNR2EouUUD0MWi":{"uri":"/melonJS/docs/melonjs/state.html#set"},"KQitOzgiNkju8Df534XEu":{"uri":"/melonJS/docs/melonjs/state.html#set_"},"pUfxyq7u4UgrD9v-3_heF":{"uri":"/melonJS/docs/melonjs/state.html#setTransition"},"vHd-6aE4xLqtKWOZ_Lw72":{"uri":"/melonJS/docs/melonjs/state.html#stop"},"P-1tqR-jaL6Zib0LvExb0":{"uri":"/melonJS/docs/melonjs/state.html#transition"},"vciC4dr48i63FeKhpBil0":{"uri":"/melonJS/docs/melonjs/timer.html"},"2dMeja7usDt6xys_s8swJ":{"uri":"/melonJS/docs/melonjs/TMXUtils.html"},"TzeEzqRAoE5lPSH_Sv8xb":{"uri":"/melonJS/docs/melonjs/TMXUtils/applyTMXProperties.html"},"35u2L6xUyjeQslu5T1cR1":{"uri":"/melonJS/docs/melonjs/TMXUtils/decode.html"},"U1p7dgKAv5LPWk879G396":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeBase64AsArray.html"},"_YzjmmMafybg-r_VD5ibk":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeCSV.html"},"QiS9cFJ_lifPm85NHRD9z":{"uri":"/melonJS/docs/melonjs/TMXUtils/decompress.html"},"N7EnV5qFJ5WwoQdNw2OCr":{"uri":"/melonJS/docs/melonjs/TMXUtils/parse.html"},"krvboVf50aiWOaP51MLlI":{"uri":"/melonJS/docs/melonjs/TMXUtils/setInflateFunction.html"},"VWanJgJMO4X4XN6kDlVV4":{"uri":"/melonJS/docs/melonjs/utils.html"},"tWu05cH0sPoYZDhxD5mME":{"uri":"/melonJS/docs/melonjs/utils/agent.html"},"lW8GGBDPryzYk73uRB6YY":{"uri":"/melonJS/docs/melonjs/utils/agent/prefixed.html"},"J2sEDJOtwrjfVwhfcTtRs":{"uri":"/melonJS/docs/melonjs/utils/agent/setPrefixed.html"},"XpZ9ouoaK1PttOcqtoMmS":{"uri":"/melonJS/docs/melonjs/utils/array.html"},"E980ymVDZMY-p3uxVMmns":{"uri":"/melonJS/docs/melonjs/utils/array/random.html"},"WJWCefJvEBPjjjGSwBgoL":{"uri":"/melonJS/docs/melonjs/utils/array/remove.html"},"hGYLz-dKDdhiLIfijeD2C":{"uri":"/melonJS/docs/melonjs/utils/array/weightedRandom.html"},"_01t3dlfLONmNXHrbamFb":{"uri":"/melonJS/docs/melonjs/utils/file.html"},"-K5KWnuWEpDTPu5vsWNq0":{"uri":"/melonJS/docs/melonjs/utils/file/getBasename.html"},"2cBBTlEJIB6rQQRDtZcE8":{"uri":"/melonJS/docs/melonjs/utils/file/getExtension.html"},"g5t9hSNQnw7UAdo9xiJbn":{"uri":"/melonJS/docs/melonjs/utils/file/getPath.html"},"QZJYOTuBZC9eQl1LTpqfS":{"uri":"/melonJS/docs/melonjs/utils/function.html"},"2bVSUhpUsg-5WoIMNXJAJ":{"uri":"/melonJS/docs/melonjs/utils/function/defer.html"},"idhZQRGe9HRpv-vaB2gPs":{"uri":"/melonJS/docs/melonjs/utils/function/throttle.html"},"dK4eSMBckxw7aYFV7QgNn":{"uri":"/melonJS/docs/melonjs/utils/string.html"},"Lm7oZaMBnnN-apL62zwlM":{"uri":"/melonJS/docs/melonjs/utils/string/capitalize.html"},"Di6fFsDuQbTGDIRBNVZb2":{"uri":"/melonJS/docs/melonjs/utils/string/isBoolean.html"},"Y-iQtF-nOESG9NYYnaMqa":{"uri":"/melonJS/docs/melonjs/utils/string/isDataUrl.html"},"r5isB6uWmyXAuh8XquuHi":{"uri":"/melonJS/docs/melonjs/utils/string/isNumeric.html"},"PTY2PsNU8izUgL8fXG86J":{"uri":"/melonJS/docs/melonjs/utils/string/toHex.html"},"TYp5V07tx7yLWqDSbmg-M":{"uri":"/melonJS/docs/melonjs/utils/checkVersion.html"},"Qubv3FB_dNTFdecMT0NCv":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html"},"LIpMC6t7hm4HGGqNzy5wc":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debug"},"MQ1kpWTGQQszOe1BUdEKU":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debugToggleKey"},"MpDUWhnnttwIvMbOvhAaY":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#hitbox"},"S0qqxI-S2z4FNd4y-8ZfW":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#quadtree"},"NrtZjkROIGZaSHbdHiRC9":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#velocity"},"wFQ8LYBI4YWHkcQRKNZaZ":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#webgl"},"wGZk67tajM6kc8wGwMxIo":{"uri":"/melonJS/docs/melonjs/video.html"},"5GKS0t3gY4Cwy7i0MGE6e":{"uri":"/melonJS/docs/melonjs/video.html#renderer"},"QgLQMdiciznlAiaB1L1z1":{"uri":"/melonJS/docs/melonjs/video/createCanvas.html"},"bH8o6RiGoSo9jKzK2YeaA":{"uri":"/melonJS/docs/melonjs/video/getParent.html"},"LFkREeNYz3FPshs04qY9a":{"uri":"/melonJS/docs/melonjs/video/init.html"},"9Hkg-yjDGgfuhR1YZ623X":{"uri":"/melonJS/docs/melonjs/Application.html"},"E9IPteqm_nhw4bCEoSqX-":{"uri":"/melonJS/docs/melonjs/Application/Settings.html"},"QKuYmboR-8wvOKD7psS6a":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#antiAlias"},"-wtBD9u5iJI24U6hIEhC0":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#consoleHeader"},"ZjlJzRLAVyGjpW_YuPaBd":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#depthTest"},"1GUe8HH9c9qpb1xAlKTAU":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#parent"},"HUC7s7xd1lGwAWMDXrWTC":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#powerPreference"},"iMdUDxNQJpqFMdoepzqNK":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#preferWebGL1"},"5pVRsbkVAb0bMXgTS_oY7":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#renderer"},"0J4HQFtLZEWfZhUpW8mCM":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scale"},"tZWOfioz_xGQufhULiWgF":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleMethod"},"giBMvURiSJy3d6uou4ihl":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleTarget"},"u0vnqDU1pBX0m6Ssr-XEr":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#transparent"},"IszwdEVl4VuLY0cHcfgU3":{"uri":"/melonJS/docs/melonjs/Application.html#isInitialized"},"JJ65rhtSDYMWPVe-26L2e":{"uri":"/melonJS/docs/melonjs/Application.html#lastUpdate"},"ip841X5Lpifwhy7YKH8x5":{"uri":"/melonJS/docs/melonjs/Application.html#mergeGroup"},"51X5xjnRFD_q5mxXSM4n7":{"uri":"/melonJS/docs/melonjs/Application.html#parentElement"},"1uyeuD-GwfqsPEQSsJdPM":{"uri":"/melonJS/docs/melonjs/Application.html#pauseOnBlur"},"4ezSwBC8eN3TEtmoUAWc2":{"uri":"/melonJS/docs/melonjs/Application.html#renderer"},"fkwRvopKasSt_LB91NOMX":{"uri":"/melonJS/docs/melonjs/Application.html#resumeOnFocus"},"Jv95FORAPGkcbh0_7RWAD":{"uri":"/melonJS/docs/melonjs/Application.html#settings"},"8EZpdgwwpJhqZ5HPRJHOH":{"uri":"/melonJS/docs/melonjs/Application.html#sortOn"},"vH94sZgPC8fypgKWpYAAD":{"uri":"/melonJS/docs/melonjs/Application.html#stopOnBlur"},"W4BzcP9nQJ8gAoafPpkyj":{"uri":"/melonJS/docs/melonjs/Application.html#viewport"},"DtMJNgkCVgLGe-popkm0s":{"uri":"/melonJS/docs/melonjs/Application.html#world"},"r5Q0UyCWIR9ysIsXulZmv":{"uri":"/melonJS/docs/melonjs/Application.html#constructor"},"YgB6Mke0pTFgVf6gg9FP3":{"uri":"/melonJS/docs/melonjs/Application.html#draw"},"yydqBvQeMcg_HP5ejt5CS":{"uri":"/melonJS/docs/melonjs/Application.html#getParentElement"},"wYqzhEs1mQAlFUMScjv2j":{"uri":"/melonJS/docs/melonjs/Application.html#init"},"0pJKDI8EokSLJ1KOrlZN5":{"uri":"/melonJS/docs/melonjs/Application.html#onLevelLoaded"},"dQDcbWeQiS4pxGI-68KPg":{"uri":"/melonJS/docs/melonjs/Application.html#repaint"},"zHNT0pwsameeD2Jqi1Iuj":{"uri":"/melonJS/docs/melonjs/Application.html#reset"},"zOEWORneM0YfpfRZGhbOk":{"uri":"/melonJS/docs/melonjs/Application.html#update"},"LUqtyMcgf-NJ6Elk7H8yq":{"uri":"/melonJS/docs/melonjs/Application.html#updateFrameRate"},"J-Ti9DHLkrkoApmQ8yvIF":{"uri":"/melonJS/docs/melonjs/BitmapText.html"},"goYTFf3qUminayjg7Mzxj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alpha"},"5kUxI_M8g9xFTUpL7_DUc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alwaysUpdate"},"Q6nju119CCUse2jUDw6a-":{"uri":"/melonJS/docs/melonjs/BitmapText.html#ancestor"},"Jbpu_hdFuwOpcXW2Uail7":{"uri":"/melonJS/docs/melonjs/BitmapText.html#anchorPoint"},"UTtCpAlCH-Ck_PI5T-Mhu":{"uri":"/melonJS/docs/melonjs/BitmapText.html#autoTransform"},"MYduAkOP2Rmt_dNrDiiam":{"uri":"/melonJS/docs/melonjs/BitmapText.html#blendMode"},"AY_9DErwcPHXcMA9LeFRA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#body"},"GdRxkUHN8ltXJ3NKYTSOy":{"uri":"/melonJS/docs/melonjs/BitmapText.html#bottom"},"FNvrxOR6TrWLvU4lo_xHl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerX"},"KCqW0nY36FdFSNwrLSiFU":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerY"},"Aa5MeAJtVF3Fj4DwJgFqG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#currentTransform"},"03OsgUoRCEf5J2KKTvrlM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#depth"},"W0UAJ6i-lHPPxDQTdl5Ss":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fillStyle"},"2TSHDhUtGVJJyK1bfxBP6":{"uri":"/melonJS/docs/melonjs/BitmapText.html#floating"},"7DP4oBi-YQWI1h61RCv9H":{"uri":"/melonJS/docs/melonjs/BitmapText.html#GUID"},"4XZpVJkNjTxANzIbauReM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#height"},"UspuiyuZQArDxqAgEJ6KW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#inViewport"},"wfi6Bjr0nrphKOU7NqHog":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isDirty"},"1k_-n7g6Z67x50EiOnvCo":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedX"},"XTlJ_SMQOd0fwLuygCOKl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedY"},"e5ExpqR4mc9wYXD7vNGWW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFloating"},"RfkNjOI8TQLBe0eMPPQEH":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isKinematic"},"AKReMxDWQ3olQFA8xuxTr":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isPersistent"},"aP7Q2wHA-PRQnlcsU_lir":{"uri":"/melonJS/docs/melonjs/BitmapText.html#left"},"5vuSdqPtwDoHvfxJoijlC":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lineHeight"},"ZorT61IcCPZCCquWDvbJ-":{"uri":"/melonJS/docs/melonjs/BitmapText.html#mask"},"XdX2au9XkHPX42qhrISHt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#name"},"-4N3HbXjh8RfCV6hlEZdA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onVisibilityChange"},"JVY2w8O_eZmYmaO-ZWxqy":{"uri":"/melonJS/docs/melonjs/BitmapText.html#points"},"Z_8iIteJiwBoI02SRwLfU":{"uri":"/melonJS/docs/melonjs/BitmapText.html#pos"},"tH35nldjFoLr7SEsRsQLv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#right"},"fR47_0CPuqL67jFr2B2mA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shader"},"vj_nnZJhfvdBG0Sf40CTc":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textAlign"},"PJOmD9IYPxgSyR6byIJE4":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textBaseline"},"5XCmnqLurCFTpRUvZ3ALF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#tint"},"SnPXirzFCdjx2yvfxLB2J":{"uri":"/melonJS/docs/melonjs/BitmapText.html#top"},"LmnL3E0WCOCKSFDefnNZf":{"uri":"/melonJS/docs/melonjs/BitmapText.html#type"},"kAw1E9dtqUI49Hzg5NAuO":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateWhenPaused"},"eu9edwZV4CgLPvEahpwai":{"uri":"/melonJS/docs/melonjs/BitmapText.html#width"},"HUciJI3N1HP78lVXdrXlm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#wordWrapWidth"},"_WDIRGPrNCTx9UDoQ3jAw":{"uri":"/melonJS/docs/melonjs/BitmapText.html#_text"},"ruHpfFDizprhHONccpJ2D":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontData"},"CT4RGj5VRq55LRzyc4W_j":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontImage"},"H4LTNe-x9tQ2cxPLkH0Ae":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontScale"},"rbxlr7a8Zdzhs6UhK10BW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#angleTo"},"vYWXhsm6-VZLzH2ZZgf3S":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerOn"},"tUjy99-pOkBTuXiom65ft":{"uri":"/melonJS/docs/melonjs/BitmapText.html#clone"},"_72-S6KEecELqQ0rmntPE":{"uri":"/melonJS/docs/melonjs/BitmapText.html#constructor"},"SNPzpwfeye6lTM-8sdbkg":{"uri":"/melonJS/docs/melonjs/BitmapText.html#contains"},"3OrEOo6Fr0PJyPt1HgkzV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#copy"},"mLMrFfTvtgdpy6ujPQ4Wb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#distanceTo"},"CmezfpMgB1MHFibuhgtTw":{"uri":"/melonJS/docs/melonjs/BitmapText.html#draw"},"vIBV9UIEVUSYmMQfcxI2C":{"uri":"/melonJS/docs/melonjs/BitmapText.html#equals"},"2euZWavCnMxqCz6IYEOwS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipX"},"81GOZDi4tQ6IpQKKmA1y9":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipY"},"WoAtnDju0RNBnwGZr70oa":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getAbsolutePosition"},"GDhKDb_G6AimsO8MYCAdj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getBounds"},"kf3OC6Eh5gHOdCpVwExDv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getIndices"},"Kbf3eW-qVyKYmxyDTwshx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getOpacity"},"dRtaIwDhv0Nojt5nYp5ou":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isConvex"},"cnNfPcNCSp3DBlYQCwbrb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFinite"},"nYr9Fd_S7Y-Ext5itQYIS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lookAt"},"ZuijG_Fqp7UcyKZ5zzSeh":{"uri":"/melonJS/docs/melonjs/BitmapText.html#measureText"},"DH5yYYo_cZJqjYm1Bp5OJ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onCollision"},"pV6w7Uqre8xFFX-fPmQ_X":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onDestroyEvent"},"yb7l4w1pnn8u1wYotSCpV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#overlaps"},"m0N-0xHRWgcWh2zhnmttm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#postDraw"},"ih9lJPnNaLaSuvtikYhJo":{"uri":"/melonJS/docs/melonjs/BitmapText.html#preDraw"},"2AxBfXzCz2SSzV3WzTOQ8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#recalc"},"m-Bp1hAlVCFd_OzFq4TEg":{"uri":"/melonJS/docs/melonjs/BitmapText.html#resize"},"GyBi9_MUVvnqXtSm9nSNh":{"uri":"/melonJS/docs/melonjs/BitmapText.html#rotate"},"PTZUz7ldCJgEjitk5yQOH":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scale"},"A6VNMJUnCka8y2I0JoDmW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scaleV"},"GiUXTZBvNMElMDN43MUVZ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#set"},"DcVRXF_kSWmn8zJrF_Qwo":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setOpacity"},"zUM7m-s85bt7zmN-GYgmQ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setShape"},"uWwDlKlaFnXFQ6n5NuMTj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setText"},"cD8rxsUwWmjcLbN_lXP7T":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setVertices"},"q6uXQCPSln2iY0PBMBC9q":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shift"},"Kuq23Zn5rx00somoh4RH6":{"uri":"/melonJS/docs/melonjs/BitmapText.html#to2d"},"It-VPANr0_v4q3uOdmG7Q":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toIso"},"oROD-lSWd_iOix3DRqKlt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toPolygon"},"VixYQSQyk5iH-mNOwKK0W":{"uri":"/melonJS/docs/melonjs/BitmapText.html#transform"},"Xy9Zi6_A6gyWQbnpRxON_":{"uri":"/melonJS/docs/melonjs/BitmapText.html#translate"},"VqV8dYTTc6loMqgRDG7E1":{"uri":"/melonJS/docs/melonjs/BitmapText.html#union"},"QWA4jD3LMRVAyPYXEwlHl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#update"},"QJS7yrLY7b23gbL6lgaQx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateBounds"},"GrJeMV_oiV27229QKgEb_":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onAnchorUpdate"},"S_ywyCWr4Ckb9vtnTWU2U":{"uri":"/melonJS/docs/melonjs/Body.html"},"dbyHxpObkPcifeHq-v88P":{"uri":"/melonJS/docs/melonjs/Body.html#ancestor"},"ly0rqGsvYboHL4hWSwSEi":{"uri":"/melonJS/docs/melonjs/Body.html#bounce"},"2bzpIDYE3GuDiiOBz4T6H":{"uri":"/melonJS/docs/melonjs/Body.html#bounds"},"1vRagiElbKIsKj_Ubnj9L":{"uri":"/melonJS/docs/melonjs/Body.html#collisionType"},"ryVsVTZMODI_fmebDSWJB":{"uri":"/melonJS/docs/melonjs/Body.html#falling"},"hoy1F6Gho5MVO8PRre4Xq":{"uri":"/melonJS/docs/melonjs/Body.html#force"},"wfiezSLUPBALf7owU9blW":{"uri":"/melonJS/docs/melonjs/Body.html#friction"},"nJMJ8eiEux940IEKEu2OE":{"uri":"/melonJS/docs/melonjs/Body.html#gravityScale"},"Z3kDK2Jrqf0KZAiu685-2":{"uri":"/melonJS/docs/melonjs/Body.html#ignoreGravity"},"7olqOAW11u9aw2FlivG8F":{"uri":"/melonJS/docs/melonjs/Body.html#isStatic"},"21aKJnhungcci0R_bGt1-":{"uri":"/melonJS/docs/melonjs/Body.html#jumping"},"Ul3vGUCaz5sMZ8QByR0-8":{"uri":"/melonJS/docs/melonjs/Body.html#mass"},"0KX6XBsf1uMyEm1caOtmw":{"uri":"/melonJS/docs/melonjs/Body.html#maxVel"},"yGibHRnWQ0jMyfXCk5LVx":{"uri":"/melonJS/docs/melonjs/Body.html#vel"},"AeOxpeQS92GjC4Pd6Ma6h":{"uri":"/melonJS/docs/melonjs/Body.html#addShape"},"iALs43J_vxGDkoE41ZSdm":{"uri":"/melonJS/docs/melonjs/Body.html#addVertices"},"GEXGKVM-NcDCYvQmEM0zX":{"uri":"/melonJS/docs/melonjs/Body.html#constructor"},"sAoqN6hGO4yyEhS1vISxE":{"uri":"/melonJS/docs/melonjs/Body.html#contains"},"3iisD_8kICWhCbBezXnuC":{"uri":"/melonJS/docs/melonjs/Body.html#forEach"},"sLm_WBiLWU5sQKimlW_Pa":{"uri":"/melonJS/docs/melonjs/Body.html#fromJSON"},"sXJui-At-Mry6ZeC8tfeL":{"uri":"/melonJS/docs/melonjs/Body.html#getBounds"},"tOKGgzTiKWWmKxRGD2Mk4":{"uri":"/melonJS/docs/melonjs/Body.html#getShape"},"Ya1OFnzUGSVeVlItdmMvW":{"uri":"/melonJS/docs/melonjs/Body.html#removeShape"},"yoZPnZlQJEeZFZW5ccbT_":{"uri":"/melonJS/docs/melonjs/Body.html#removeShapeAt"},"KY9MPnfnjtSaeIl9LBEMf":{"uri":"/melonJS/docs/melonjs/Body.html#respondToCollision"},"WqeozvKXwstpuP0qM8Jv7":{"uri":"/melonJS/docs/melonjs/Body.html#rotate"},"Gg45KuCYMU4ETQabL86Tl":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionMask"},"re-OKKT6lKfDskEzF25TY":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionType"},"_OfDkFIZ0KmElnNlkRMLm":{"uri":"/melonJS/docs/melonjs/Body.html#setFriction"},"dwAVWFLJmq2hhgERDugpz":{"uri":"/melonJS/docs/melonjs/Body.html#setMaxVelocity"},"n7tKmahTWZiNNdCP-8ooi":{"uri":"/melonJS/docs/melonjs/Body.html#setStatic"},"fggWGHOn40OQZF7K-ecQe":{"uri":"/melonJS/docs/melonjs/Body.html#setVertices"},"v8n2fhL7ghEwXc6ewDIUp":{"uri":"/melonJS/docs/melonjs/Body.html#update"},"_vCLmeQK676ElHCRSY3lv":{"uri":"/melonJS/docs/melonjs/Bounds.html"},"xXdjIIe9T9u8WV6QcZmZu":{"uri":"/melonJS/docs/melonjs/Bounds.html#bottom"},"TS3Vy8PpwyycqarkpiyYE":{"uri":"/melonJS/docs/melonjs/Bounds.html#center"},"C2Apz2xsD1a7Yy4VEwPfk":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerX"},"h_-cg-AWYce2aBsqZ8d9G":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerY"},"QHyQ-CWYviBlgeNvmk6Tx":{"uri":"/melonJS/docs/melonjs/Bounds.html#height"},"C3qrorVunbaksBA9HfC_2":{"uri":"/melonJS/docs/melonjs/Bounds.html#left"},"mrCGjxtrfAu0h-FkTDBNx":{"uri":"/melonJS/docs/melonjs/Bounds.html#right"},"m4vmTURH_3fhXY-5Xkzfz":{"uri":"/melonJS/docs/melonjs/Bounds.html#top"},"UrdzCOE3i3LvXOyFPK0k9":{"uri":"/melonJS/docs/melonjs/Bounds.html#type"},"NijwXw1YV2yTGO7xV5Tpa":{"uri":"/melonJS/docs/melonjs/Bounds.html#width"},"INjUpw1qv0l9Db0pHu97A":{"uri":"/melonJS/docs/melonjs/Bounds.html#x"},"Vnr1PrMdj0UMj2w2hfDxL":{"uri":"/melonJS/docs/melonjs/Bounds.html#y"},"xSmVLaZt4IDDT5KU-a0nO":{"uri":"/melonJS/docs/melonjs/Bounds.html#add"},"wwM5SfRQiLDPSKbyk6drY":{"uri":"/melonJS/docs/melonjs/Bounds.html#addBounds"},"NidKLYtzRcqvgiFm0jAJW":{"uri":"/melonJS/docs/melonjs/Bounds.html#addFrame"},"iEkXMQ7dhrQIcTrTgy9be":{"uri":"/melonJS/docs/melonjs/Bounds.html#addPoint"},"BIz0m10zXRdrhkTdFCVPq":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerOn"},"gRISCJcDnMNqz7isKXhyz":{"uri":"/melonJS/docs/melonjs/Bounds.html#clear"},"OUd2Pgyus7tk4ZeQqC4mM":{"uri":"/melonJS/docs/melonjs/Bounds.html#clone"},"A5RN4exjk2P8iBsKqJuW6":{"uri":"/melonJS/docs/melonjs/Bounds.html#constructor"},"nHkFW4L5_pBVBu7ZlfLUB":{"uri":"/melonJS/docs/melonjs/Bounds.html#contains"},"OBVm552djvKgpTpAkAXXb":{"uri":"/melonJS/docs/melonjs/Bounds.html#isFinite"},"wyDW2lUPd2DdtmFCPYjr2":{"uri":"/melonJS/docs/melonjs/Bounds.html#overlaps"},"HFEqzhBpTi5rcqsyaSn91":{"uri":"/melonJS/docs/melonjs/Bounds.html#setMinMax"},"M4JRjfbKAX7LcYV2J754Q":{"uri":"/melonJS/docs/melonjs/Bounds.html#shift"},"aZPDIKjHZc73DoqhIdMRy":{"uri":"/melonJS/docs/melonjs/Bounds.html#toPolygon"},"5DO0NrrwBIrUEUiKL8Ugl":{"uri":"/melonJS/docs/melonjs/Bounds.html#translate"},"7KBNpDIjcqUAJT1oJSsTH":{"uri":"/melonJS/docs/melonjs/Bounds.html#update"},"URPgTHLeyizIcMw5qJuXe":{"uri":"/melonJS/docs/melonjs/Camera2d.html"},"cOwAHZl87y4ElOaQpVqZY":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html"},"fYs8s2IjSBrgBLuzUt8o4":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#BOTH"},"FQX2g9ObkyENn0l_gR9gl":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#HORIZONTAL"},"dvxL6fY2Sa_S4DzHVRpXi":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#NONE"},"f7mucIyVKtEwO9uWNneKr":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#VERTICAL"},"pZB-xCcMM_G8F9rhTn9Pi":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alpha"},"eOwhQe7OqS__VfcGwxarx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alwaysUpdate"},"G7-etFpEvB2j-5tRgTmIx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#ancestor"},"x9Y_Q3JchcXjqiP7VAOUp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#anchorPoint"},"3lTdlGBeh1u4LwiQRuWpl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#autoTransform"},"sGuK_zapMUDl9pKwpX0Q-":{"uri":"/melonJS/docs/melonjs/Camera2d.html#blendMode"},"5B_OCQ7qA6viC0jU4QF0g":{"uri":"/melonJS/docs/melonjs/Camera2d.html#body"},"YBu6bNLoEfzrpEJoQTvjb":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bottom"},"7HuUW70dIkjbD7E2_a_LO":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bounds"},"-njz3tQC_yxkl1l7eZQ_o":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerX"},"pGH4G09aXW3LLvwPimjuz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerY"},"GYK8o3kLDZxP2PAoSXfO2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#currentTransform"},"hH14-wYPl1el9EBnRt-Ro":{"uri":"/melonJS/docs/melonjs/Camera2d.html#damping"},"3sItJR-xQAYRvUH3vK3M1":{"uri":"/melonJS/docs/melonjs/Camera2d.html#depth"},"jpsgAQtKAogihwBuW7CM8":{"uri":"/melonJS/docs/melonjs/Camera2d.html#far"},"TWWtdRay9eWqOfLvKklfU":{"uri":"/melonJS/docs/melonjs/Camera2d.html#floating"},"A9cqk4RI0EQjZOLjxHbPD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#GUID"},"gCyiQ2hU3l5nmtkg841Vr":{"uri":"/melonJS/docs/melonjs/Camera2d.html#height"},"tonSdmN4Fz5PQxljpIjB3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#inViewport"},"BPRPZKzssWFFh1d_lFFCD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isDirty"},"6VUbQFrZZHWUcHV4uSvZX":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedX"},"kmOWMXi9oOKaJaFFG3D1a":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedY"},"jDdeSK9URoc7-LLBplj-2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFloating"},"BBR8CF7UXgwabWSAV-d8s":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isKinematic"},"I-7RE3jXBH89WRmQMYUZt":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isPersistent"},"HUN2MRjBqfe4XbqPiGA-k":{"uri":"/melonJS/docs/melonjs/Camera2d.html#left"},"R2RfOd2P4r8GA5RPJIrSp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#mask"},"_XZp-rp3Pc9KKC-CcVlFS":{"uri":"/melonJS/docs/melonjs/Camera2d.html#name"},"ky72m8xftWhVYFktGcYR0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#near"},"FFNGae-3WQOzLvzq_26cH":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onVisibilityChange"},"ECFxloUBuKL-ypugty0Uq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#points"},"HAq4RZZJ1dxNuVVfco-RD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#pos"},"S26-mRXM7IfBRcCIWSiJq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#projectionMatrix"},"1UUUa6YdAqCrWabxpkyto":{"uri":"/melonJS/docs/melonjs/Camera2d.html#right"},"LzL4rRZ-1G19OyugTtj0o":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shader"},"PZki41NGqQErSWux4lJ8F":{"uri":"/melonJS/docs/melonjs/Camera2d.html#tint"},"S4f7OD02Y6_Q53DpMK6na":{"uri":"/melonJS/docs/melonjs/Camera2d.html#top"},"9VNnKXTvWHM1nUHzAJbFm":{"uri":"/melonJS/docs/melonjs/Camera2d.html#type"},"8zVPipIwhQZL5RJDRnRI_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateWhenPaused"},"nnFeA_0hYVVl-L_jpe_8E":{"uri":"/melonJS/docs/melonjs/Camera2d.html#width"},"asR4hxnITbwm7XABIDhgA":{"uri":"/melonJS/docs/melonjs/Camera2d.html#smoothFollow"},"huDp7MmKPVw6aEE4KUTKF":{"uri":"/melonJS/docs/melonjs/Camera2d.html#angleTo"},"5jIGH-BFhn9cG0v-Gywm5":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerOn"},"VfauP8glC3JeqnYAklIE-":{"uri":"/melonJS/docs/melonjs/Camera2d.html#clone"},"fIe8A6FcwIM8wqKnlj3kx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#constructor"},"YWcNqc9cGCV3yjpoUg6WC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#contains"},"_psG2__AqMM5_tyudg_Ee":{"uri":"/melonJS/docs/melonjs/Camera2d.html#copy"},"gnwyKo9IsWvwImNVonq-v":{"uri":"/melonJS/docs/melonjs/Camera2d.html#distanceTo"},"g5oiP55jnW4GCg5lRHuFT":{"uri":"/melonJS/docs/melonjs/Camera2d.html#draw"},"sffpXO5A5lIgatkHJ4_HN":{"uri":"/melonJS/docs/melonjs/Camera2d.html#equals"},"Z-WURYGtwyl32AdhFVNHR":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeIn"},"92zt71WVQjd_paDY4Omlt":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeOut"},"E0tvyBZrtPIRPQ3C2zuoq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipX"},"KS5vlR8lkwI7M2rKNY1ia":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipY"},"Ay4eZ-A8OhVay3NGhGTHI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#focusOn"},"T6c9PAlflE5VM7kRrKQ9j":{"uri":"/melonJS/docs/melonjs/Camera2d.html#follow"},"DQfHyu40-NkkVKwY1v2RE":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getAbsolutePosition"},"WeBbWEQP_wRQ4Z2kfVamg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getBounds"},"UCekchV7Kq3fexeaNTU1H":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getIndices"},"o6LRGId87Lj6xd7tLJXWr":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getOpacity"},"4W90Lq8Tw4BzlivIXwu-y":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isConvex"},"DjWUjF_Fkwq5-ep77MeUy":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFinite"},"o8pIE6cff058Ogo8-StDU":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isVisible"},"cbWbWoOuaOKIPwBUUvnBN":{"uri":"/melonJS/docs/melonjs/Camera2d.html#localToWorld"},"ssp_wjJMAchoZnNoPd994":{"uri":"/melonJS/docs/melonjs/Camera2d.html#lookAt"},"dR4sOsfkEojLfUQwo-j5G":{"uri":"/melonJS/docs/melonjs/Camera2d.html#move"},"SXK0_UVQnnCMHmiGpqhqW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#moveTo"},"dmIl8xRbXhLAylJM9Ajok":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onCollision"},"utsGCEBUhj-byDbAxhXvw":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onDestroyEvent"},"EFBFSTTaaynqU3WJztJBg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#overlaps"},"ONiW-SDguuCFfLz-vOufb":{"uri":"/melonJS/docs/melonjs/Camera2d.html#postDraw"},"h5mLB-eHtV5WczxgYNyof":{"uri":"/melonJS/docs/melonjs/Camera2d.html#preDraw"},"ViaCHc08Uu4zMTZNZUJ6S":{"uri":"/melonJS/docs/melonjs/Camera2d.html#recalc"},"9wvjagRVHJsUSILx-rDAV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#reset"},"E0E5Ja8zbhdzimETjBI_s":{"uri":"/melonJS/docs/melonjs/Camera2d.html#resize"},"N_mtORGHPIJHlHyNyupQO":{"uri":"/melonJS/docs/melonjs/Camera2d.html#rotate"},"axgtBtT7OD2Ci8V3B9DQI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scale"},"kRWCgx1ECn7viRpHxbfeI":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scaleV"},"R42c7rXbBw0qDUg1hz3gz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setBounds"},"WmhccItTomS3OJozSOqEW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setDeadzone"},"9evWAewLSRgR2xmvNkDhl":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setOpacity"},"T40hE88m-upNH_-n7fOEY":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setShape"},"oTvWN8cQEdzdyWPSpFO1I":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setVertices"},"kAteiD1MoaKUPqIpD78Yz":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shake"},"9_A9gFqPh2VGD2OpUDJYu":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shift"},"ydM-W8cHhNQ2qxheVL81Y":{"uri":"/melonJS/docs/melonjs/Camera2d.html#to2d"},"_ut0SEXErYfQVNqK-na7F":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toIso"},"KB9EWXKNdQ790KAA6_Emm":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toPolygon"},"ZqGG4_8YS_3WaM3dmFMqo":{"uri":"/melonJS/docs/melonjs/Camera2d.html#transform"},"jeZpZqd4gd0tP19Zeh0DF":{"uri":"/melonJS/docs/melonjs/Camera2d.html#translate"},"EqZvqnluYZH0ZfR5vM0Hb":{"uri":"/melonJS/docs/melonjs/Camera2d.html#unfollow"},"6gUR9yOMrJaBonBycdhbJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#union"},"bPHICUutP9liePkccN6vL":{"uri":"/melonJS/docs/melonjs/Camera2d.html#update"},"p2EYMrjIJhNmjgexZL-2M":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateBounds"},"Ue0NMp9cR6WHwpH6osIGB":{"uri":"/melonJS/docs/melonjs/Camera2d.html#worldToLocal"},"7Bp_jgQQVr3Is_EKD9mxJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onAnchorUpdate"},"MjqXwy3BiCorzLar1MaL9":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html"},"i0lMjHoNAWBmRbftrYIkF":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#depthTest"},"ZwkMApNxZdxXFK3oFTn1R":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#designRatio"},"KYjdlGQRkmEx8IeP_Hbud":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#height"},"hGLGDeXtc6QUo-nT-CDMs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#isContextValid"},"X5vMLQwLfPoSlwpNfrf93":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#path2D"},"E2km3rpP7vNY-JCUNxw8n":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scaleRatio"},"-99JQojgmUZrCBwTlWft1":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#settings"},"C6_H0cnDNIq6Of-p16ODC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#type"},"a09amdFOQ81vpOCByO5eg":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#width"},"pijxj6YBhDNK6Y4ozu_tk":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#beginPath"},"paaEGcjDKkUX8zEFHkaq3":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clear"},"iy4kDf3m68RqJ1X2NfT2I":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearColor"},"5UZbr9a_Ru2wAzcn9Oq0L":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearMask"},"6i1TOFUx7Niu6v3kswim5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearRect"},"MhrpASMNxFRlym4Sxg9lD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearTint"},"Pzveh5LorMw8H2otOqLyF":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clipRect"},"oz814eW3eEvWlwTGJvS2X":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#closePath"},"y1S31uBmVoxZMsDHEfZd_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#constructor"},"nODfBr6s7SADesHbCuZIt":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#createPattern"},"GoA587DZokIBuUssB67O_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawImage"},"icHcv-eRe9r0he-a_3C7P":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawPattern"},"PnYP8lR9AYktHxkoU3ZhC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fill"},"4OB9dz-S2iI83kb95c4lZ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillArc"},"liau2ZbUm1NBc8a8I7D4g":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillEllipse"},"0mVMEEplaLqjHFX-Vf2nh":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillLine"},"nqW-CDgRfLs-nKUNUNSCd":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPoint"},"sfVTapjijHYJ27J8vmPb-":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPolygon"},"8ZG1i0ocp57c32ItcwNI8":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRect"},"UwxDouVjZIvj__bo4023n":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRoundRect"},"dfq-RmBU2Mcq8d37Z6sdO":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#flush"},"vpHmLlmgEyCC1HYdADH_K":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getBlendMode"},"_9mRRaKk9fEiCKJXUgVwR":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getCanvas"},"3HgVeZxhRDAFhTuh3YdHf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getColor"},"7LSKVshE7OI5GgWFxZna4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext"},"nxwDeKMQo9POefh6mmUx2":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext2d"},"edJyeBcl51aDm_QF6dSRM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getGlobalAlpha"},"5hZFfNpmtqXxJXSX7csuf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenCanvas"},"v1hNIqMBxyiyAVCzkSAFY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenContext"},"swnfOJIkxB0da0VZ4th-P":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#globalAlpha"},"2sFi3CdPEGLcmKunjKsLw":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#lineTo"},"uFHOe0QSK19sMypLwvu92":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#moveTo"},"1g9Gw8skLbk4e-aQaHYWS":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#overlaps"},"dl66Q44MhWMKF8hOoFVB9":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rect"},"Pis0lqhSGkDGCeqVgefqv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#reset"},"2duGC9A87i2uP5gIsk5hf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resetTransform"},"eid69PZfmx_M3ei_RVm77":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resize"},"fyvKgje7Wm3vy-taN_ViQ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#restore"},"FxsHYi5yYZ_ax6-stCnL6":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rotate"},"34XSpMhUE0mq9bfS-JbZs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#roundRect"},"gHjUkxQB4RrGpV1_zjonf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#save"},"DZHGwusJfPRy1ZK1zVF2N":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scale"},"A94wE4JV6xoh-IDEADq7r":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setAntiAlias"},"VPruCCB1zbvjX6OCnBpKl":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setBlendMode"},"Qs039OgtE2Kk1X3ZpX2Dw":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setColor"},"3_--QZBpdU3KvPxhl3ZDj":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setGlobalAlpha"},"yqm0CxxmMDXLnaxqJof0G":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setLineWidth"},"AKrhzxkj7BHqwdtFnZP8k":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setMask"},"5XGrdmWZxeqpqZ3of3OQT":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setProjection"},"aCKnXnnBkxulX0iOnYEpq":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTint"},"H0TIJiTB58gfNjK0_LvGs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTransform"},"0y4dV1pG5KtsWpGJJdTBv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#stroke"},"kVmqefbJCxld0XFMIjGtp":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeArc"},"nEKHLAQKDf3j7FYyb5c20":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeEllipse"},"mJWGd8z4joL3bSEMMS4iW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeLine"},"fbKoWV-hCM1gwZvbf-DfC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePoint"},"ZRKK-wDtcOatQVjqIR8az":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePolygon"},"_JusoXRrM1-wZf6WFwZRg":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRect"},"TubNLEjhsZcJoQgQuq2hK":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRoundRect"},"oEHRm_BCtlFx3yDZjp879":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#tint"},"z9DdWHdRHcBL8S8ATwC3q":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toBlob"},"XoR8aG4K7ZobBqVrr_wMq":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toDataURL"},"rCAb9Q20hXu2utCICwQTU":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toImageBitmap"},"0Zzfz389eSlB65HwOsCc4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#transform"},"BSka8dr87cYCoHrromO_w":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#translate"},"Yjv2DE_ME6IwcG_hqIeuH":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html"},"gBD4c79hAwBlEPvHaiLCJ":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#canvas"},"bzu1uBoRh73MeGXlKN5Hi":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#context"},"22LrlCTarWQ9pNMHDWx0v":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#height"},"j-OiRMwP8ghbPbHuJdkED":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#width"},"s67Oa-Tf1gNZlDIv0c80j":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#clear"},"K4C4bthWlsDcRnzTzNrQM":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#constructor"},"sZRyO-g-oYGQz6InSMaUQ":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#getImageData"},"GSfcw5LU-c7VbIa0yB0Sj":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#invalidate"},"KaMq_XvHxxDi9VZ3EZmD7":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#resize"},"PcgoA0f5IA3m3XMGSKNRF":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#setAntiAlias"},"CECp5V_i5_1APH5gPzwD3":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toBlob"},"essOAx4Gb0HRKji2vKnZG":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toDataURL"},"9xtKcSmNmZFhZu2Zt25BZ":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toImageBitmap"},"HKZqODTTLecTp16Y-_LBo":{"uri":"/melonJS/docs/melonjs/Collectable.html"},"t2AM4W3Vgon7IRR0Y3lrk":{"uri":"/melonJS/docs/melonjs/Collectable.html#alpha"},"Oitu5uzWtNOaOHXQvMLD9":{"uri":"/melonJS/docs/melonjs/Collectable.html#alwaysUpdate"},"LBuliQdoQgryy_tpqyjW1":{"uri":"/melonJS/docs/melonjs/Collectable.html#ancestor"},"2SngOAv1Q8N2G6ublqZS2":{"uri":"/melonJS/docs/melonjs/Collectable.html#anchorPoint"},"uBMxMwLu7a9bIqXOxFaT2":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationpause"},"AOn_ECNFCCJh1i-H74FSv":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationspeed"},"C_NPa7A-uI5fRqVbu1GUs":{"uri":"/melonJS/docs/melonjs/Collectable.html#autoTransform"},"c5TayJgGK00n3Ker2HLQp":{"uri":"/melonJS/docs/melonjs/Collectable.html#blendMode"},"86AdvUgruPXY5oeFQ_qtc":{"uri":"/melonJS/docs/melonjs/Collectable.html#body"},"P4S4mRI5Lfel6VR-LfbrX":{"uri":"/melonJS/docs/melonjs/Collectable.html#bottom"},"Degi5kMexjy29Qb5nZzZN":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerX"},"Z1yCLg42cqJxzXp635pVe":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerY"},"opSczKyNARCnI0j7NDR6V":{"uri":"/melonJS/docs/melonjs/Collectable.html#currentTransform"},"mbgPKxc4zJevvPhhuPVnF":{"uri":"/melonJS/docs/melonjs/Collectable.html#depth"},"s3_YrI6Tmwa4CGw0rpvqo":{"uri":"/melonJS/docs/melonjs/Collectable.html#floating"},"0jCnMOFrn-I5ICBX5njFE":{"uri":"/melonJS/docs/melonjs/Collectable.html#GUID"},"pjfkFFq-a7TrIB4ELhhnN":{"uri":"/melonJS/docs/melonjs/Collectable.html#height"},"GMu5C81kSLCz3lSvGf2U_":{"uri":"/melonJS/docs/melonjs/Collectable.html#inViewport"},"-IJEEI5gS__MhuwYoaM5K":{"uri":"/melonJS/docs/melonjs/Collectable.html#isDirty"},"MXUBS9yWTISZj2rpfMHHc":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedX"},"bADDxwSIgUs6CveGjpt-i":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedY"},"2zRV7jfqOPb_U4Cci6BYf":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFloating"},"KZ59T6vBBbsDw81bBmOxR":{"uri":"/melonJS/docs/melonjs/Collectable.html#isKinematic"},"LegRjpIVkWIAxqdkUxewI":{"uri":"/melonJS/docs/melonjs/Collectable.html#isPersistent"},"UGJkt6mb4UHM4-kCWF1_w":{"uri":"/melonJS/docs/melonjs/Collectable.html#left"},"FGmfDDOKKk-IDaayxb9Mh":{"uri":"/melonJS/docs/melonjs/Collectable.html#mask"},"KW50OvsWkUG-I3i7leRlZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#name"},"0qRPiOdSdyHrkTNClL1BM":{"uri":"/melonJS/docs/melonjs/Collectable.html#offset"},"UZ0vmLNEA7SRDhSa51gzj":{"uri":"/melonJS/docs/melonjs/Collectable.html#onVisibilityChange"},"BuzUbQinRPFSRs-Ewp8WL":{"uri":"/melonJS/docs/melonjs/Collectable.html#points"},"OyeL0g7FDFKC3kZGnI7sG":{"uri":"/melonJS/docs/melonjs/Collectable.html#pos"},"T0ICLsW1flR1MLLqjIY77":{"uri":"/melonJS/docs/melonjs/Collectable.html#right"},"RV0tQEPQmZ4KvVJH7lUrh":{"uri":"/melonJS/docs/melonjs/Collectable.html#shader"},"eGBKzF52EkNzaKm1-piHR":{"uri":"/melonJS/docs/melonjs/Collectable.html#source"},"f174kFGPQMFsbcSJXs3Je":{"uri":"/melonJS/docs/melonjs/Collectable.html#tint"},"v2ae_FdpOzbtVk7qYxajn":{"uri":"/melonJS/docs/melonjs/Collectable.html#top"},"MNiZzCzplI4sAhejjWSmA":{"uri":"/melonJS/docs/melonjs/Collectable.html#type"},"4aTBol33uE5CDikTuDkLv":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateWhenPaused"},"Gq645gLlbc8YOCd4P5ruF":{"uri":"/melonJS/docs/melonjs/Collectable.html#width"},"wfkF6VqgzQlyDj4fjzywL":{"uri":"/melonJS/docs/melonjs/Collectable.html#addAnimation"},"odBnG6f4luEVnmW2cLE_9":{"uri":"/melonJS/docs/melonjs/Collectable.html#angleTo"},"xlmnoXd7KeK6-kZppQZxQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerOn"},"KrvdSe8FgSAMedSW6lGHW":{"uri":"/melonJS/docs/melonjs/Collectable.html#clone"},"Z20X1RROFAh2gKOcw3WmA":{"uri":"/melonJS/docs/melonjs/Collectable.html#constructor"},"WieMeUD2Hyie4zJnEKuHe":{"uri":"/melonJS/docs/melonjs/Collectable.html#contains"},"FnKD4FKLyA76bFguC2oBG":{"uri":"/melonJS/docs/melonjs/Collectable.html#copy"},"rBbPj3vtfoIQP5Z5acH7k":{"uri":"/melonJS/docs/melonjs/Collectable.html#distanceTo"},"SjspNygLD0QXIm5jIi0KT":{"uri":"/melonJS/docs/melonjs/Collectable.html#equals"},"Au9Sz2o4qtqc8EOJPcOcG":{"uri":"/melonJS/docs/melonjs/Collectable.html#flicker"},"UF_EmkZwIdFOmqtZy6hS-":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipX"},"Zg2RSh22Ah8oMRFX_gV9V":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipY"},"d3bP1N-7mF_B1EzuHAS7g":{"uri":"/melonJS/docs/melonjs/Collectable.html#getAbsolutePosition"},"kHWn5TEAlYLFrg0iFclj2":{"uri":"/melonJS/docs/melonjs/Collectable.html#getBounds"},"WuAW8SlXsnsIzVOk7fYq-":{"uri":"/melonJS/docs/melonjs/Collectable.html#getCurrentAnimationFrame"},"lMMSPnXEVs0v0dgh5YDOz":{"uri":"/melonJS/docs/melonjs/Collectable.html#getIndices"},"0Zc9GTh_vIyj1bmra3INm":{"uri":"/melonJS/docs/melonjs/Collectable.html#getOpacity"},"Jv8dBVLRIoi34CeXha8cq":{"uri":"/melonJS/docs/melonjs/Collectable.html#isConvex"},"brVULC7qoaI9-MCw3EcV2":{"uri":"/melonJS/docs/melonjs/Collectable.html#isCurrentAnimation"},"JBkRx8KosuTWzpt6BgT_F":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFinite"},"pUPkUMqDaZc37lUmKe2BY":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlickering"},"ZrUsRIbFxKMRKQzXBLImO":{"uri":"/melonJS/docs/melonjs/Collectable.html#lookAt"},"xkP3SN4br83u9gLAl_15g":{"uri":"/melonJS/docs/melonjs/Collectable.html#onCollision"},"9MCYYxXWqKDcOhe6NRm5A":{"uri":"/melonJS/docs/melonjs/Collectable.html#onDestroyEvent"},"4OJ2lUT9cz35b1Hxw9No7":{"uri":"/melonJS/docs/melonjs/Collectable.html#overlaps"},"-T3WHZPXrLDjP7K7wBFhv":{"uri":"/melonJS/docs/melonjs/Collectable.html#postDraw"},"liZNmEvvHwhVB1ruxcW_U":{"uri":"/melonJS/docs/melonjs/Collectable.html#preDraw"},"LAdR_HfgY4MYadqozedbN":{"uri":"/melonJS/docs/melonjs/Collectable.html#recalc"},"xYAhEqeMXfPScIUaRWIHo":{"uri":"/melonJS/docs/melonjs/Collectable.html#resize"},"JUCdMrHmnmF-xeDABepDt":{"uri":"/melonJS/docs/melonjs/Collectable.html#reverseAnimation"},"SnXeDjMDdX7IgByQ6EygZ":{"uri":"/melonJS/docs/melonjs/Collectable.html#rotate"},"WQPc84pasJ8dl8547XeoT":{"uri":"/melonJS/docs/melonjs/Collectable.html#scale"},"uDV-TXu_Qs86n8t8zoDOF":{"uri":"/melonJS/docs/melonjs/Collectable.html#scaleV"},"gZCae7ee-5EcZ8B2RCuoz":{"uri":"/melonJS/docs/melonjs/Collectable.html#setAnimationFrame"},"aTzq1gqwPwZLIeIAQSO53":{"uri":"/melonJS/docs/melonjs/Collectable.html#setCurrentAnimation"},"Q8Tz5--cNvvxsK0ONLJDv":{"uri":"/melonJS/docs/melonjs/Collectable.html#setOpacity"},"f6bJx0YfZLJQRzIg8WWbH":{"uri":"/melonJS/docs/melonjs/Collectable.html#setRegion"},"bDAKaGjlABSn7lvQaO_v5":{"uri":"/melonJS/docs/melonjs/Collectable.html#setShape"},"nc_JtepgCc9uTJpHsu8Qp":{"uri":"/melonJS/docs/melonjs/Collectable.html#setVertices"},"WoMCokzuBlM32V-VD7pwU":{"uri":"/melonJS/docs/melonjs/Collectable.html#shift"},"1MBcGts7eELmMmAh9PSLu":{"uri":"/melonJS/docs/melonjs/Collectable.html#to2d"},"dfQiEnGlPXuW7vhMxnaPG":{"uri":"/melonJS/docs/melonjs/Collectable.html#toIso"},"kpM2aaAHK30ukbHLWI41b":{"uri":"/melonJS/docs/melonjs/Collectable.html#toPolygon"},"VAmIFD1KFj231BSA1aYg0":{"uri":"/melonJS/docs/melonjs/Collectable.html#transform"},"jy8cRcsXDuG6QBMW5QRxV":{"uri":"/melonJS/docs/melonjs/Collectable.html#translate"},"17xSYaXdjETkgF8NmbjpP":{"uri":"/melonJS/docs/melonjs/Collectable.html#union"},"p5vVUokCRfXRv2q2pMc44":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateBounds"},"uyu8T8mcXbwbL_1aR3cd8":{"uri":"/melonJS/docs/melonjs/Collectable.html#draw"},"TV6yxq2KUyepVlwsSlkpA":{"uri":"/melonJS/docs/melonjs/Collectable.html#update"},"ws6ScmpH5_jyNKE_6Dzrh":{"uri":"/melonJS/docs/melonjs/Collectable.html#onAnchorUpdate"},"WulFf4XiL-TINZ85bInKV":{"uri":"/melonJS/docs/melonjs/Color.html"},"TIS-sOI0Kuvt3j7yanAF2":{"uri":"/melonJS/docs/melonjs/Color.html#alpha"},"tdpyC9f8AvxLctjGVQwNo":{"uri":"/melonJS/docs/melonjs/Color.html#b"},"e-6clFfV31so0d3t5vmsp":{"uri":"/melonJS/docs/melonjs/Color.html#g"},"4o0h826wGsfI-0bzwlfZO":{"uri":"/melonJS/docs/melonjs/Color.html#r"},"OXTUuV1lscE7_3c2OFlks":{"uri":"/melonJS/docs/melonjs/Color.html#add"},"NUxSoA098S-1-I3N92Vko":{"uri":"/melonJS/docs/melonjs/Color.html#clone"},"hA2tUpz86PrVTko8rk5ph":{"uri":"/melonJS/docs/melonjs/Color.html#constructor"},"XtWElTIqSW-lzytuLmy3V":{"uri":"/melonJS/docs/melonjs/Color.html#copy"},"Q9twPd_Y7ModXgsoVVAI6":{"uri":"/melonJS/docs/melonjs/Color.html#darken"},"oLnh-WO0AnirR7I4XWM9e":{"uri":"/melonJS/docs/melonjs/Color.html#equals"},"ShXh-DZOHCy41wz8vUSLc":{"uri":"/melonJS/docs/melonjs/Color.html#lerp"},"YhjVWvoVhrs5ud3FaMf8g":{"uri":"/melonJS/docs/melonjs/Color.html#lighten"},"fq8mcfQeH7SM36HCHgXuJ":{"uri":"/melonJS/docs/melonjs/Color.html#parseCSS"},"oUZkR4Q6aYfdEsOWifcj1":{"uri":"/melonJS/docs/melonjs/Color.html#parseHex"},"BaFW8pA9kSWL-k2JboC8f":{"uri":"/melonJS/docs/melonjs/Color.html#parseRGB"},"jitvuqI4FKW0OYsVQW52b":{"uri":"/melonJS/docs/melonjs/Color.html#random"},"raG6QkfIUWvhEE6uWHCzB":{"uri":"/melonJS/docs/melonjs/Color.html#setColor"},"LDmJap5UUQ8IruKCZTp22":{"uri":"/melonJS/docs/melonjs/Color.html#setFloat"},"Tr5YZyuXPeaKdcj14Tiea":{"uri":"/melonJS/docs/melonjs/Color.html#setHSL"},"o06qcckGWdhR1EMj4VRS5":{"uri":"/melonJS/docs/melonjs/Color.html#setHSV"},"Gyq4PbYSCRaWOrdyftijS":{"uri":"/melonJS/docs/melonjs/Color.html#toArray"},"fB2hMwaxkQu8tN-H6xjN_":{"uri":"/melonJS/docs/melonjs/Color.html#toHex"},"RXYLw6LfKfLxOWioK5tsM":{"uri":"/melonJS/docs/melonjs/Color.html#toHex8"},"exFQYVQINXrpa2QS3AxsS":{"uri":"/melonJS/docs/melonjs/Color.html#toRGB"},"X1L7_Xr27ROjA_2-jjZB4":{"uri":"/melonJS/docs/melonjs/Color.html#toRGBA"},"EWP-8aT7akUI0q55eDqJf":{"uri":"/melonJS/docs/melonjs/Color.html#toUint32"},"Hv2U3OTt3MK-VbfClLqaT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html"},"QwhJCU0z7SyWMuD50jnJZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alpha"},"o2-tv3Il7rg8GFqxEJIG5":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alwaysUpdate"},"N-PNUdz0FdzL7Wspw_EnD":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#ancestor"},"Aq7fALZ5ev7tohylBN4qM":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#anchorPoint"},"vPSwusUOy4LUnVADkvsuV":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#autoTransform"},"cxpHweqaPkz_s4qoaEBRA":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#blendMode"},"8eHW6lY4GOcpqz_bUFLxQ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#body"},"5a-kWX_nveqG4_Uk7UBOR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#bottom"},"7gr2lYODi283lx0o-z_Hj":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerX"},"mv6cwEarFBlXQ8NUVrSJ6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerY"},"YE1jGi33IyXOSLSxdabpT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#color"},"Ro8ianYTL2GRq23oRZWds":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#currentTransform"},"h-RoyABysG_FKfmf7hE6n":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#depth"},"h3lvy5qh48RP4QsmQyoAN":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#floating"},"DI_tqExe_Wac5Sxz7tV4Q":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#GUID"},"hzWP9MTTav9T25QR5A9qn":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#height"},"pQGkenvkwOVFAjcXTG9Jw":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#inViewport"},"zU0BhX0ztkVmDkBZAY2jv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isDirty"},"nqatsH1eyo73iLjS3rOj1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedX"},"dQAQ8mmM04mfvZgVT0BS-":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedY"},"XutimlB4qmoj5LTMjGD2-":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFloating"},"iriDZO2yArI_Irve6fpOY":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isKinematic"},"YWv1yeHWJyHCUqCs7tGIp":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isPersistent"},"DWZX_GxxUOi66mfBgkhMK":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#left"},"93qhQvGtmDUQLaNy32t4j":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#mask"},"_e6KLY3VJsWsj6DXjzeV9":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#name"},"9zoXyAUmW2iKJdjKkX5sR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onVisibilityChange"},"sWI6WSbJMJtDTi4duI_A3":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#points"},"T5gAO9_k-nsdOJBFXtAaG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#pos"},"lXllUa6Bb8bs139Jynov1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#right"},"oDStgo5PauY6zG4gtY3Y6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shader"},"DRju8LjMsj91d_68zceo2":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#tint"},"tx0cSS0Gk_rglFge2AcwL":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#top"},"kfDdY8MVWe86tAlVLTY9W":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#type"},"lTuEvBC0NoVyYVPOrdfJb":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateWhenPaused"},"_kPjbZxzPMPEJGoi2vGQF":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#width"},"sqd1ZYqHpau8-Gse27zBr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#angleTo"},"CL_Sx10ZMgss1TAYQYw2t":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerOn"},"FBk4njBpEnr2EhqAX1BVP":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#clone"},"jNOIise0xN9DKrinwtwIg":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#constructor"},"vghkTyedRl9DDYr5DKvv5":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#contains"},"ulvs9tu2OZujPNyZCOEbG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#copy"},"5qo6AViHVzXB6ZW5_o7jc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#distanceTo"},"Kgtm5sBCXiUBopTabw1sE":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#equals"},"RTY4WIEd1qk9aUW5bQqtJ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipX"},"6m6DbWqz0f10Xwz_EQ7Ay":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipY"},"5glERixdT_JFyh8fB8U7M":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getAbsolutePosition"},"6M3kfig8UyKLhMp-Kdk4I":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getBounds"},"SNvsNFejNveCrAJfAJrcG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getIndices"},"zWcctw92n4lSGmHUAF31S":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getOpacity"},"Tq7Oph3CNRC-KBqepvZBq":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isConvex"},"wWWUFHuCRQorEKNEVk6jT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFinite"},"AEji0UEjpzaJBMLuzqLbf":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#lookAt"},"p9wvGHRwuKZYHJ_ej-WBN":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onCollision"},"Sw4mf6DZRlDjn6qcHR1xZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onDestroyEvent"},"mz3T_X2ATAsuVwzBKjYey":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#overlaps"},"QmxKE1pkwzlvCWKl6qgOo":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#postDraw"},"NgxKIxo8IZcyHbYMGZKbm":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#preDraw"},"XsPMA7r3j4ZgPNahkK9Tv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#recalc"},"OBmlGXGTIiN-2_gu4jobw":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#resize"},"NV0-rsLc-XNYXBt0Jlhds":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#rotate"},"9IzH5ErcA1MpPRyl4AyBg":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scale"},"ZC4e5sMcO9n1l6OSZUjSX":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scaleV"},"pMRAXONsejM_Nxgc9D51U":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setOpacity"},"gbYfJWrXTCWN-JQv50xPa":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setShape"},"uREOnCYjDe15Mc2SpbNG-":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setVertices"},"doNA4oCCjzWhmm0zFgIS-":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shift"},"qcSa0i97hZHkSE43yTeB5":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#to2d"},"0itszYBIW9wvDJwj6QhZi":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toIso"},"TkhpdOPhtqM-TGGf06RBn":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toPolygon"},"RMetU9d5Pu8xRkWoUer8W":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#transform"},"cHEDHI-VXXdKxAfZYzKZc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#translate"},"arwfpSunY42EbxIe-wlXb":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#union"},"r9TeNj29NyQxCAeZDYy3K":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#update"},"F4IHWhMzYL_0cl46YqpgB":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateBounds"},"J2iLm9OAh1RjgiEsxcSif":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#draw"},"MHHqSwVbjoFsYtXKh3mnm":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onAnchorUpdate"},"T9a1l882nx_EAEZ_eaWh9":{"uri":"/melonJS/docs/melonjs/Compositor.html"},"9n0dEFC_sLAl9_JYasb3j":{"uri":"/melonJS/docs/melonjs/Compositor.html#attributes"},"yg7Gb24Z-d-jQ5wLQ64to":{"uri":"/melonJS/docs/melonjs/Compositor.html#currentShader"},"kXJN_vH6YOHdvusnIea8_":{"uri":"/melonJS/docs/melonjs/Compositor.html#defaultShader"},"mlpL04TkN7IxoDUGw7pCP":{"uri":"/melonJS/docs/melonjs/Compositor.html#mode"},"sTNdcNCQaXYteh09ryO3E":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexByteSize"},"OyQkGNFOq7GG-L5MulEqd":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexData"},"W8MKqwDUga77a5_j6BDnD":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexSize"},"bN1u94WweeBfKr8Qpe_au":{"uri":"/melonJS/docs/melonjs/Compositor.html#addAttribute"},"RT22dvkxAlkfjlQxtvXFt":{"uri":"/melonJS/docs/melonjs/Compositor.html#bind"},"AHorFIfbtsva87eZ9pORI":{"uri":"/melonJS/docs/melonjs/Compositor.html#constructor"},"ul-w-zCxn4QmP5b7zI3AZ":{"uri":"/melonJS/docs/melonjs/Compositor.html#flush"},"9JSftMkp05JO_wHlEQCOZ":{"uri":"/melonJS/docs/melonjs/Compositor.html#setProjection"},"N7_UZaIPOdE9gbAsscUEh":{"uri":"/melonJS/docs/melonjs/Compositor.html#useShader"},"3dbIOzHTHEopXjqZTSJ-4":{"uri":"/melonJS/docs/melonjs/Container.html"},"ajrk4AXkndbx9EdlwYE_9":{"uri":"/melonJS/docs/melonjs/Container.html#alpha"},"muq0OT11nZJ8E7K5RWU4k":{"uri":"/melonJS/docs/melonjs/Container.html#alwaysUpdate"},"G-Md5AcpdNK2jaVC-Nlcw":{"uri":"/melonJS/docs/melonjs/Container.html#ancestor"},"fQrwpDpeHZvT3qzRYvSdN":{"uri":"/melonJS/docs/melonjs/Container.html#anchorPoint"},"AGRbjyPFJrwUihAh1ymA6":{"uri":"/melonJS/docs/melonjs/Container.html#autoDepth"},"1WM04zIkW9BDnkox92s5H":{"uri":"/melonJS/docs/melonjs/Container.html#autoSort"},"jCOWB-4LuCuVSkhNgESMJ":{"uri":"/melonJS/docs/melonjs/Container.html#autoTransform"},"iOtDTzmZGBl87aQFeNdGn":{"uri":"/melonJS/docs/melonjs/Container.html#backgroundColor"},"nj7Qx4KV8jaBSYJWLgfbW":{"uri":"/melonJS/docs/melonjs/Container.html#blendMode"},"VDk0-Bjez4Q82nRk1PY-a":{"uri":"/melonJS/docs/melonjs/Container.html#body"},"3ozVZkySg5KyTmkBs9_xT":{"uri":"/melonJS/docs/melonjs/Container.html#bottom"},"Pti1Ulc3dpbLfNJ5GsD0j":{"uri":"/melonJS/docs/melonjs/Container.html#centerX"},"11CiJ4xe2bOy9-53Rhwgq":{"uri":"/melonJS/docs/melonjs/Container.html#centerY"},"lx6BVhlQX5OSVzyJXM6tZ":{"uri":"/melonJS/docs/melonjs/Container.html#clipping"},"tU9Yyj-Nh-YOSVKFcexhR":{"uri":"/melonJS/docs/melonjs/Container.html#currentTransform"},"-SzXXa8gM6lwhux7mQKCe":{"uri":"/melonJS/docs/melonjs/Container.html#depth"},"P21VvQB2PGXiOz-78r9fE":{"uri":"/melonJS/docs/melonjs/Container.html#enableChildBoundsUpdate"},"6KqVyqt6M_0mHB-lHlwuR":{"uri":"/melonJS/docs/melonjs/Container.html#floating"},"oytzEg7LMTqMS8GoYLwjO":{"uri":"/melonJS/docs/melonjs/Container.html#GUID"},"NZjeUdhIkXCuYv12LRmXq":{"uri":"/melonJS/docs/melonjs/Container.html#height"},"J1ISrfYNxrHJh0Izj2MXM":{"uri":"/melonJS/docs/melonjs/Container.html#inViewport"},"qPY0cu3r3uX5vhK9JHEMG":{"uri":"/melonJS/docs/melonjs/Container.html#isDirty"},"Oy5STYIXlu3ohmcvhbChN":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedX"},"FBxuhYCS8utamiFGNYUSG":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedY"},"0W0-gkM3EIToIlPg6-E0z":{"uri":"/melonJS/docs/melonjs/Container.html#isFloating"},"TuTDFe3b8TlCrxPSCBFzq":{"uri":"/melonJS/docs/melonjs/Container.html#isKinematic"},"pQtDx_67R3Z-guqs3dou8":{"uri":"/melonJS/docs/melonjs/Container.html#isPersistent"},"C2rgn-luje414Ri9jf9mt":{"uri":"/melonJS/docs/melonjs/Container.html#left"},"BYk2iUNfVUtldKy-e1T4t":{"uri":"/melonJS/docs/melonjs/Container.html#mask"},"TRffdZn6_IKnEAJteOZh8":{"uri":"/melonJS/docs/melonjs/Container.html#name"},"F78yp6I2mqPu7JrASfPPL":{"uri":"/melonJS/docs/melonjs/Container.html#onVisibilityChange"},"khyRDm6NFNl-4ctSvIBmh":{"uri":"/melonJS/docs/melonjs/Container.html#points"},"cW3tM64D_QSGtHqH4ATpG":{"uri":"/melonJS/docs/melonjs/Container.html#pos"},"6-o37QzKuE6hj5EJEG3qV":{"uri":"/melonJS/docs/melonjs/Container.html#right"},"G_jsoQ24WOecDLciOEAXX":{"uri":"/melonJS/docs/melonjs/Container.html#root"},"BaCH4se0U41C6ACK4yj08":{"uri":"/melonJS/docs/melonjs/Container.html#shader"},"Zsf2zBO4OsX2lldKQ1dU2":{"uri":"/melonJS/docs/melonjs/Container.html#sortOn"},"EBrW0Q-ORbShTaisWpOOG":{"uri":"/melonJS/docs/melonjs/Container.html#tint"},"bAK6Mu9DJmts3PGhQlkVq":{"uri":"/melonJS/docs/melonjs/Container.html#top"},"vSjZExjIkhcv9uAtqsaxW":{"uri":"/melonJS/docs/melonjs/Container.html#type"},"IKrO9oM6L_ZQrqFf7F5yx":{"uri":"/melonJS/docs/melonjs/Container.html#updateWhenPaused"},"rqIpRw73TaBQUS70adU0o":{"uri":"/melonJS/docs/melonjs/Container.html#width"},"QDmbw6fbwrLHy-e7k8yQ_":{"uri":"/melonJS/docs/melonjs/Container.html#addChild"},"Ar3wK38NuK-96YlLl8nc4":{"uri":"/melonJS/docs/melonjs/Container.html#addChildAt"},"0JhjM8Jhb8ZhfD23-AWHT":{"uri":"/melonJS/docs/melonjs/Container.html#angleTo"},"4nkUA4OQSkq9ftrNueoVQ":{"uri":"/melonJS/docs/melonjs/Container.html#centerOn"},"sl-I03gNnjIMEKyxJQ7uc":{"uri":"/melonJS/docs/melonjs/Container.html#clone"},"k5Fkd9jLlg2Xwzlu786jg":{"uri":"/melonJS/docs/melonjs/Container.html#constructor"},"NSupJfw5vOgeLuS7u7p5E":{"uri":"/melonJS/docs/melonjs/Container.html#contains"},"jyNGFhrvJcxKnNx43y5An":{"uri":"/melonJS/docs/melonjs/Container.html#copy"},"5n0q44v4Z0hVddVLp6edN":{"uri":"/melonJS/docs/melonjs/Container.html#distanceTo"},"3INzrgi269j_kic7b3YWh":{"uri":"/melonJS/docs/melonjs/Container.html#equals"},"EtnSeR-60etFfj0eIsnWT":{"uri":"/melonJS/docs/melonjs/Container.html#flipX"},"73vccZiMqbU-GJZAEaPrt":{"uri":"/melonJS/docs/melonjs/Container.html#flipY"},"1yajZU-4FzuGQarXLMnYM":{"uri":"/melonJS/docs/melonjs/Container.html#forEach"},"HeczAJA_XfvRlMT7p_tVS":{"uri":"/melonJS/docs/melonjs/Container.html#getAbsolutePosition"},"lk1gMaluJ7OhlKvV4j-Ow":{"uri":"/melonJS/docs/melonjs/Container.html#getBounds"},"r0GNU3Ac4_5ExXT9BPwqn":{"uri":"/melonJS/docs/melonjs/Container.html#getChildAt"},"yxL1gZGCYaXi5vMSpzgEI":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByGUID"},"aZzzAExJc6X3i0gbvj7dW":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByName"},"B3K0gKtFRfHJLK8aOntgX":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByProp"},"EWZVy5AcP9mL7_7JqFBjB":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByType"},"Djod5Iht0JUwl3t1AYe0b":{"uri":"/melonJS/docs/melonjs/Container.html#getChildIndex"},"F0jtVGBP78K9ThEnc8zWV":{"uri":"/melonJS/docs/melonjs/Container.html#getChildren"},"d7VSaojah26a5iAe1XHIs":{"uri":"/melonJS/docs/melonjs/Container.html#getIndices"},"7f99BSBtm1ACQ-MUd6lIw":{"uri":"/melonJS/docs/melonjs/Container.html#getNextChild"},"WAn1dWKxR2K4hIXmh4P7w":{"uri":"/melonJS/docs/melonjs/Container.html#getOpacity"},"IW1n-Yk_9ezhFEEaIxR6K":{"uri":"/melonJS/docs/melonjs/Container.html#getRootAncestor"},"6U4uo6w1HCh4g81TufP4T":{"uri":"/melonJS/docs/melonjs/Container.html#hasChild"},"F4qSJHgY1hKFBUIpqXjfv":{"uri":"/melonJS/docs/melonjs/Container.html#isAttachedToRoot"},"LzK3hVNLa5RZgzBGWDTq5":{"uri":"/melonJS/docs/melonjs/Container.html#isConvex"},"3xS09hrgl6vYtBsolmJ5x":{"uri":"/melonJS/docs/melonjs/Container.html#isFinite"},"3d-VdgXxJfNGyTLTpZflT":{"uri":"/melonJS/docs/melonjs/Container.html#lookAt"},"Ckif8Wn5vlpa2bABV4J6L":{"uri":"/melonJS/docs/melonjs/Container.html#moveDown"},"YGb0gQv_0B_QvLs-tMxOh":{"uri":"/melonJS/docs/melonjs/Container.html#moveToBottom"},"a_hhWUq5ZMGQKv7hj_za7":{"uri":"/melonJS/docs/melonjs/Container.html#moveToTop"},"xHA5RFkEMg_nthe2GT-Vv":{"uri":"/melonJS/docs/melonjs/Container.html#moveUp"},"XNVtUSxYunur2l1ZPnvNR":{"uri":"/melonJS/docs/melonjs/Container.html#onChildChange"},"mti_a6VcuxGVbfyizFe3I":{"uri":"/melonJS/docs/melonjs/Container.html#onCollision"},"NeeDAwdUbRGoTB_Kfn2oX":{"uri":"/melonJS/docs/melonjs/Container.html#onDestroyEvent"},"0OArbMH3UZI7rGNF1qWe4":{"uri":"/melonJS/docs/melonjs/Container.html#overlaps"},"iBDq7UrAL1ns5Krd1dbEf":{"uri":"/melonJS/docs/melonjs/Container.html#postDraw"},"g5jOa6lkz2WDFCYpy7TUQ":{"uri":"/melonJS/docs/melonjs/Container.html#preDraw"},"9kx2bZhFdNwujTRaxB_iL":{"uri":"/melonJS/docs/melonjs/Container.html#recalc"},"1m-Ng7iMbsxS6TJV10gIV":{"uri":"/melonJS/docs/melonjs/Container.html#removeChild"},"IJ-UtKD_9WXL9PB3M1wlK":{"uri":"/melonJS/docs/melonjs/Container.html#removeChildNow"},"36yiHMwxxfS6GccKJ7U9D":{"uri":"/melonJS/docs/melonjs/Container.html#reset"},"d9757ZDeQVrmIYFpMusqL":{"uri":"/melonJS/docs/melonjs/Container.html#resize"},"QUk8nLCml48uQa63eM-Og":{"uri":"/melonJS/docs/melonjs/Container.html#rotate"},"TgN7et7hDeFTKqqDPBZMz":{"uri":"/melonJS/docs/melonjs/Container.html#scale"},"aSkz8uiHi7YP9YuSpSTIu":{"uri":"/melonJS/docs/melonjs/Container.html#scaleV"},"rlelNYFnFOqdeKeNAt7A1":{"uri":"/melonJS/docs/melonjs/Container.html#setChildsProperty"},"bjMHYw34mQBxiqf8RKSoi":{"uri":"/melonJS/docs/melonjs/Container.html#setOpacity"},"dRARkfwMF93hLy0yMMiX3":{"uri":"/melonJS/docs/melonjs/Container.html#setShape"},"mnygBdNi8nEIjrt2Kvkxw":{"uri":"/melonJS/docs/melonjs/Container.html#setVertices"},"RW5bTIrUQYUbEUVVuMAX2":{"uri":"/melonJS/docs/melonjs/Container.html#shift"},"6gb2yWzaBF-W4vQxj8hUx":{"uri":"/melonJS/docs/melonjs/Container.html#sort"},"bXR-inOMmn30U2dAURIR7":{"uri":"/melonJS/docs/melonjs/Container.html#swapChildren"},"N91hAi_-bDS18AP99Xcl1":{"uri":"/melonJS/docs/melonjs/Container.html#to2d"},"XyUALbYQsIBLU55aB7wal":{"uri":"/melonJS/docs/melonjs/Container.html#toIso"},"Y-qVl0HKzUuM6XjKNlo9j":{"uri":"/melonJS/docs/melonjs/Container.html#toPolygon"},"X6nO7ErHlHyqrz7cYXTnt":{"uri":"/melonJS/docs/melonjs/Container.html#transform"},"SzP6Knu9tIYnmiKGTzTfZ":{"uri":"/melonJS/docs/melonjs/Container.html#translate"},"fkBGhYYBfoKR0cXeHUMdf":{"uri":"/melonJS/docs/melonjs/Container.html#union"},"v-mVeJvUgK7b0wsAtEGYk":{"uri":"/melonJS/docs/melonjs/Container.html#updateBounds"},"tiILorU5kX3OzpN_EBIHj":{"uri":"/melonJS/docs/melonjs/Container.html#draw"},"nbRH9pGo3ctJBzejQnRrc":{"uri":"/melonJS/docs/melonjs/Container.html#update"},"XCUU_Y3ZZzBh6OaunxWEd":{"uri":"/melonJS/docs/melonjs/Container.html#onAnchorUpdate"},"pJPipaXtUgGDAny7_o7Dz":{"uri":"/melonJS/docs/melonjs/Detector.html"},"nMl-pQhiHZZhVNIkrJkHD":{"uri":"/melonJS/docs/melonjs/Detector.html#response"},"Waq_FcghhUh8oiRqsYDFX":{"uri":"/melonJS/docs/melonjs/Detector.html#collides"},"0m7qU9bTVlyQ8CYl35jvD":{"uri":"/melonJS/docs/melonjs/Detector.html#constructor"},"7ZOrwf9q3YGyQL59bShm8":{"uri":"/melonJS/docs/melonjs/Detector.html#shouldCollide"},"e5982iuqEdgBTT8dj0Goy":{"uri":"/melonJS/docs/melonjs/Draggable.html"},"igaNSHcx7WByR3ceRf8E9":{"uri":"/melonJS/docs/melonjs/Draggable.html#alpha"},"EGIFWizRBQ-3-R9dHuofm":{"uri":"/melonJS/docs/melonjs/Draggable.html#alwaysUpdate"},"KesYVjvfxr9Lox-C5xrdf":{"uri":"/melonJS/docs/melonjs/Draggable.html#ancestor"},"WjZ9gnP4XCM3Xn8b3ZfH_":{"uri":"/melonJS/docs/melonjs/Draggable.html#anchorPoint"},"DCyhMDkoJdbWL6RIy20Qs":{"uri":"/melonJS/docs/melonjs/Draggable.html#autoTransform"},"9r-ey9ZD1xOuM5ThIkjwf":{"uri":"/melonJS/docs/melonjs/Draggable.html#blendMode"},"ThgyzEf2mJHUjpNsUzU-e":{"uri":"/melonJS/docs/melonjs/Draggable.html#body"},"2o4KXmpcAYBXBa3VhfghO":{"uri":"/melonJS/docs/melonjs/Draggable.html#bottom"},"biCfA6WXdjYgTyyJ_nirK":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerX"},"pUMfwXtncxk5YcYSxlkPk":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerY"},"Ru6I_ZrZutX-p2YDFRSVW":{"uri":"/melonJS/docs/melonjs/Draggable.html#currentTransform"},"x1zOt5BbOxtyxDhJWHw1h":{"uri":"/melonJS/docs/melonjs/Draggable.html#depth"},"xuHPODNnn76qw01RfaQRM":{"uri":"/melonJS/docs/melonjs/Draggable.html#floating"},"T3tsBtpqlzhAFeegxsqmU":{"uri":"/melonJS/docs/melonjs/Draggable.html#GUID"},"FX1gxeLbHVCAdkBSrlZDX":{"uri":"/melonJS/docs/melonjs/Draggable.html#height"},"PE65UIJhk8Ntkn6uE75qn":{"uri":"/melonJS/docs/melonjs/Draggable.html#inViewport"},"SXM1vn58aMr7FhWcaPxKv":{"uri":"/melonJS/docs/melonjs/Draggable.html#isDirty"},"LrRKHGU_I6F2XTlhGP2of":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedX"},"KRaf8590wxAqYzPAlk4g1":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedY"},"eQnpclcEb8-3i4d6MQQUp":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFloating"},"Kt-neoNkQk4UUuoVR_J8D":{"uri":"/melonJS/docs/melonjs/Draggable.html#isKinematic"},"TkBuq16upVO8oIrmEVcIR":{"uri":"/melonJS/docs/melonjs/Draggable.html#isPersistent"},"tfZ2SfSDgbZnLAYOFY799":{"uri":"/melonJS/docs/melonjs/Draggable.html#left"},"a_pPsdE4IW5qTHaTFYwBN":{"uri":"/melonJS/docs/melonjs/Draggable.html#mask"},"bHu4uz9V4BzwUZOJDJl1U":{"uri":"/melonJS/docs/melonjs/Draggable.html#name"},"afZlnrtp3GAt6AjKndaUQ":{"uri":"/melonJS/docs/melonjs/Draggable.html#onVisibilityChange"},"tW7HYGYZhsc2sd85FHzIo":{"uri":"/melonJS/docs/melonjs/Draggable.html#points"},"BvAUwVSSA02AvF2S4Wm80":{"uri":"/melonJS/docs/melonjs/Draggable.html#pos"},"YZaN8H2qT5ymVfIm9r478":{"uri":"/melonJS/docs/melonjs/Draggable.html#right"},"oUWtr1_DBrri2woSRPX9G":{"uri":"/melonJS/docs/melonjs/Draggable.html#shader"},"dDyIIN9cL_jftbS_8josp":{"uri":"/melonJS/docs/melonjs/Draggable.html#tint"},"TQIFzH5efUqV8ixBpcZ5L":{"uri":"/melonJS/docs/melonjs/Draggable.html#top"},"sqMQSC2txnsmaJoQCpMCX":{"uri":"/melonJS/docs/melonjs/Draggable.html#type"},"z14qJcqxKl2vzxh2q22Ay":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateWhenPaused"},"mjDnuA0hsRuUhyd7MyyYj":{"uri":"/melonJS/docs/melonjs/Draggable.html#width"},"3GTG8QPsCwC0wQk5SpAWp":{"uri":"/melonJS/docs/melonjs/Draggable.html#angleTo"},"POy7MXU2pWpcg5JLNZuBh":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerOn"},"Ax9S8Al5FbEF9WwUn_ien":{"uri":"/melonJS/docs/melonjs/Draggable.html#clone"},"SJHZY0G9KYh6JJR5dEmor":{"uri":"/melonJS/docs/melonjs/Draggable.html#constructor"},"qSW-SFgJKC5ri_kGToM5V":{"uri":"/melonJS/docs/melonjs/Draggable.html#contains"},"a-j3PzVW-VK1Oi-w3UMbe":{"uri":"/melonJS/docs/melonjs/Draggable.html#copy"},"q7TeNwza3TOG0CTbT0gO5":{"uri":"/melonJS/docs/melonjs/Draggable.html#distanceTo"},"HRjz4UJrhuHn0qxCB-egD":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragEnd"},"SteFuDj0MnxPvlTfRUOBr":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragMove"},"Cqg13P-CJeWDoybBkl2S9":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragStart"},"ZtIZpx5cgEKGPBqfGe9EJ":{"uri":"/melonJS/docs/melonjs/Draggable.html#draw"},"z-Ws6xbq4hsdLih_Bl7FY":{"uri":"/melonJS/docs/melonjs/Draggable.html#equals"},"uXw1tmol2vpFTlhtT8TMi":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipX"},"zWDAE2S-NlPGx3Hbzh6op":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipY"},"7eo5kU0UYZgoBVRul1vD3":{"uri":"/melonJS/docs/melonjs/Draggable.html#getAbsolutePosition"},"mYbWOAk_KDAjlNm4Xo96b":{"uri":"/melonJS/docs/melonjs/Draggable.html#getBounds"},"23RbuIz856nW8TpopFGgA":{"uri":"/melonJS/docs/melonjs/Draggable.html#getIndices"},"uYC5LyKY7RrreN9SU5Twg":{"uri":"/melonJS/docs/melonjs/Draggable.html#getOpacity"},"IwD02NTLDj2dyXSmSBNQQ":{"uri":"/melonJS/docs/melonjs/Draggable.html#isConvex"},"yy5MqMndEu7eWjRAztAXc":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFinite"},"Z8ejJFR341jB427xPYnFi":{"uri":"/melonJS/docs/melonjs/Draggable.html#lookAt"},"audW0nOkUDvtndvhD1E0R":{"uri":"/melonJS/docs/melonjs/Draggable.html#onCollision"},"-lIMT4cXOIAeeFH30524D":{"uri":"/melonJS/docs/melonjs/Draggable.html#onDestroyEvent"},"xRAAqogxWGE8Tq62x4XK5":{"uri":"/melonJS/docs/melonjs/Draggable.html#overlaps"},"_3r8izv8_b2oFE6vY8Id_":{"uri":"/melonJS/docs/melonjs/Draggable.html#postDraw"},"8ErByPmY2EGEeSc4amNuA":{"uri":"/melonJS/docs/melonjs/Draggable.html#preDraw"},"WT-XCHg7sUjIOKNZ5AZ7D":{"uri":"/melonJS/docs/melonjs/Draggable.html#recalc"},"J5Vyie_Z_AgAWs4HFt32M":{"uri":"/melonJS/docs/melonjs/Draggable.html#resize"},"4El0_O452lkvwRDVUgpbW":{"uri":"/melonJS/docs/melonjs/Draggable.html#rotate"},"LV6x2TcLm3G2fout4CC0d":{"uri":"/melonJS/docs/melonjs/Draggable.html#scale"},"9uVvW74urp0NM_xXeFvOL":{"uri":"/melonJS/docs/melonjs/Draggable.html#scaleV"},"npkdcmBuvjaWk8SGiKa6W":{"uri":"/melonJS/docs/melonjs/Draggable.html#setOpacity"},"5H-JCNvqGG4kCQi8NV_vc":{"uri":"/melonJS/docs/melonjs/Draggable.html#setShape"},"Wgpg_4S3gUirXF86dnwMh":{"uri":"/melonJS/docs/melonjs/Draggable.html#setVertices"},"FwigffPg7MV4Sbyvg7CZF":{"uri":"/melonJS/docs/melonjs/Draggable.html#shift"},"Ip56PwJjBqW0oejYUjoKz":{"uri":"/melonJS/docs/melonjs/Draggable.html#to2d"},"INJtt2av5WJBT-bRFFbp9":{"uri":"/melonJS/docs/melonjs/Draggable.html#toIso"},"GfxDNjIlmAY7EGkYLI3m4":{"uri":"/melonJS/docs/melonjs/Draggable.html#toPolygon"},"Z3KLtKfia8r4vWqsaDOvQ":{"uri":"/melonJS/docs/melonjs/Draggable.html#transform"},"ERDSb2OlQVwnPvkacXg7O":{"uri":"/melonJS/docs/melonjs/Draggable.html#translate"},"P5IrKzERJt-OGep6TXkV6":{"uri":"/melonJS/docs/melonjs/Draggable.html#union"},"MYf5sTlHWwk08_PGA-pxy":{"uri":"/melonJS/docs/melonjs/Draggable.html#update"},"YEf8f-dFLkErbF01SesSb":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateBounds"},"ZVV-GyNr9IBb4bKInaW0M":{"uri":"/melonJS/docs/melonjs/Draggable.html#initEvents"},"zXRXw4OLrcwEvLZIYZpzg":{"uri":"/melonJS/docs/melonjs/Draggable.html#onAnchorUpdate"},"ZJt6xu_YFIPSGvpPBgcUh":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html"},"RDiZ8orAdG9MwKizCctnC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alive"},"zABKsk8fUR2H30WDvrPFw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alpha"},"ABtSPGpbSV8XN80HrCv88":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alwaysUpdate"},"dLHGrTRNLXvZmDUBMrC44":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#ancestor"},"gpRovNBGgASel6QWxFqf6":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#anchorPoint"},"nDL_Ji5rQsLTcgooLNkDB":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#autoTransform"},"VtuN58OSIISfQf-ZqhXa7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#blendMode"},"34Gig6VL9Xsyr8Arvzc03":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#body"},"Q1-H1zDeMv3Xg9DSJExSX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#bottom"},"sktAAbDIyMnhoP35YNI2l":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerX"},"3ukf0pwUDB1yDNbJ4Nhiv":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerY"},"zYRupGSiELAbK-ayyRVsw":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#currentTransform"},"XnKKAzyID31P5we4qcauW":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#depth"},"0Gh5EHNJUamuKqOKohrWv":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#floating"},"QSdRHRtOEZi75vs2vgjCM":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#GUID"},"9AX-RU0-jpHaXSg7ZjVU_":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#height"},"EnpNwcdUgL5x_i2Aj08ct":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#id"},"hPST9RtKjjfpypsmkbmIK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#inViewport"},"_LX4NvCP8XyiEDIWZYRqX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isDirty"},"yGpjm3Dapuw3_qLzuN5Ql":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedX"},"u2cs_ue0ELMQnHhk__rLF":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedY"},"mwTYqwnehqOXoclZws7kN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFloating"},"vx32Fl5d-bUUXomMe0iFN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isKinematic"},"kKAkfcfK3TkB_BLf3nzi-":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isPersistent"},"JEXaYxWcIWVGM4K-UtLtq":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#left"},"ILvZyzVEnENNKEMzanbkt":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#mask"},"n5KTIcR8Jq_Ai4la9mbmA":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#name"},"2F1zo_tTSjWiQwHmboK1V":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onVisibilityChange"},"5F1KXXFsxH3ipA-iEgF4b":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#points"},"UwNrz6m05Kzwug4b58KPj":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#pos"},"JE1NLbW-7bD0U9459O_Ry":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#renderable"},"B4NklqMSPNBlrNiaCe5Zm":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#right"},"bHsWHkdaWhBgTQuJPKpuS":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shader"},"MvZvWzz71lH6dX2cPRXYX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#tint"},"DAZTKkKmyLZAjOGTjdR3I":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#top"},"8koZ4Sjl9wDVnlg6Bm_EV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#type"},"B6z8dV_sbpWe4JoCIZm5Q":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateWhenPaused"},"4Aomp-7ViqbMIpQpE7Ojx":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#width"},"ZKugorfvJ-5mDK3iNBDGo":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#angleTo"},"op7HEhzQTOrtl1ZxgV5Hr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerOn"},"sCfABmFjac3wUkfuMnGV1":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#clone"},"XLD4_XJmbZRWzQW0VGfTF":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#constructor"},"bt-WyEKAttoUBjEb24MpO":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#contains"},"eXdTpgXdLaDL0urqlu0WC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#copy"},"9O7dKKpKPl5wCbEcGLibP":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#distanceTo"},"hYyUkOqSJYIOa4eU0Xpni":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#equals"},"-pJlzQJ18gRV1_kDF4d0u":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipX"},"UBVCU6JFapV4NiyCewvVS":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipY"},"N3w8K3bhEY8G7eDMhHdS9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getAbsolutePosition"},"9tRok1InOsy3afQWVqH0T":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getBounds"},"zTzb4giz-gIzHen2VPqyU":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getIndices"},"jP5BOK0lFQEEUcHPQfzKx":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getOpacity"},"m1_6DHJes8rU8FgcRi3LN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isConvex"},"57lxFbyNdVsYXh0lC2DnE":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFinite"},"qTbQX5SiCJU8fSuCTqLfO":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#lookAt"},"78qvfkL74_U2TZZljTph1":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onBodyUpdate"},"CPKE5W8uyMelnaxlTYr_q":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onCollision"},"JisoNIP-CYsq49R1Tom3b":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDeactivateEvent"},"9dVIyrDqoHedSTfKOFOwn":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDestroyEvent"},"wmtmdpAs48H7yWJA8-Bx2":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#overlaps"},"G3PD0ly5iO1v5VYflPlC0":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#postDraw"},"73ZcapKC418lqDDX430D4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#preDraw"},"OsaZo7mkfKPfE1Ote9ZXX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#recalc"},"KnzAsqykn5B5XbVHLWte3":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#resize"},"C8j3rpfzwSPnZM-bP_NIP":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#rotate"},"zM_V-YB_25RqOogte2TPk":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scale"},"YrT5SGkIzOg6lQrzwjWPC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scaleV"},"swK1jucl73IEN0tvg2Bw9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setOpacity"},"KPGd5MxXtGToynUTwClOd":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setShape"},"2B5M5sAdilF_vHd6EzOMV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setVertices"},"qnhgeuWHnbPE3qpl_XP1t":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shift"},"DHAySQ1_LxroR1XW-sykI":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#to2d"},"PfHVXvJ2cPSp04O2g1Je2":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toIso"},"8Q8A6VqozDWnE1eckyhXj":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toPolygon"},"UyEAzN_Gws0lZnZmQL9NB":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#transform"},"CgOKhQWRUnjmQaKe1Gt4f":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#translate"},"puCZ6zUuopdl9-jxyxjIJ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#union"},"s3lpoTWnkMaw9qqC6afiN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#update"},"QBBp-g3yRNnZQ02ZsD2pX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateBounds"},"fNzW5o-MRCw6uEEQZ5hpU":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#draw"},"PuGB9cc-uEU5vgYEGDJx8":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onAnchorUpdate"},"SL200BH9MSD4bT7bVmf2q":{"uri":"/melonJS/docs/melonjs/DropTarget.html"},"Ult1NZKUKtxJRBuWzAfK-":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alpha"},"3YO2_dRuVt8yVM00CkTxk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alwaysUpdate"},"GzG8hv86ZH_5BKG9TWj0S":{"uri":"/melonJS/docs/melonjs/DropTarget.html#ancestor"},"o3zLJ3D3PoNQf2u5AoXre":{"uri":"/melonJS/docs/melonjs/DropTarget.html#anchorPoint"},"qWSpGnTxkLDTEzHavW0Y1":{"uri":"/melonJS/docs/melonjs/DropTarget.html#autoTransform"},"RgY9f6TotpajpyAKPfFcJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#blendMode"},"OcjBE8vFViCa_jjO87i1R":{"uri":"/melonJS/docs/melonjs/DropTarget.html#body"},"jVdKCsBut8huYFIDi2XSG":{"uri":"/melonJS/docs/melonjs/DropTarget.html#bottom"},"mAb6LbA3cCcE6JmqjudiV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerX"},"5dqROqtAlH-zTlQQM5QnP":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerY"},"LjktcOswZ-6R5XZlmwux2":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkMethod"},"ca_lsM_Lc87Iupx3t-aoO":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_CONTAINS"},"cE674FfxgXs58MTdc_K6g":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_OVERLAP"},"zf_UvNUlLjFby8PUa6Kca":{"uri":"/melonJS/docs/melonjs/DropTarget.html#currentTransform"},"gNgXsrThA2vvu2uEpN3Kp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#depth"},"hFr9ehy0kqyOupaYscGvP":{"uri":"/melonJS/docs/melonjs/DropTarget.html#floating"},"ex6A3SFdZ5qads8Ztn8He":{"uri":"/melonJS/docs/melonjs/DropTarget.html#GUID"},"9oqrrhZK4_0BxfLQ94siz":{"uri":"/melonJS/docs/melonjs/DropTarget.html#height"},"XY6v5k61L_yb2A2iz2M2A":{"uri":"/melonJS/docs/melonjs/DropTarget.html#inViewport"},"h7nAmhEFECYAxxF9nF_yp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isDirty"},"wbaM2KQUcuhCJ30_fl-_H":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedX"},"FMPKRau-pAMwcX4YzTfZ_":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedY"},"W7bUFvWLk1naNO36DBJU0":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFloating"},"wmqZE4nEyFyv2taQ3XKWH":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isKinematic"},"k9OMgPqY71FwCPnZcSWMB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isPersistent"},"iA3cJFORHCKwEBQ-TCAMo":{"uri":"/melonJS/docs/melonjs/DropTarget.html#left"},"vIV4yOBrEvUMkkn9V1yec":{"uri":"/melonJS/docs/melonjs/DropTarget.html#mask"},"JNCDURb1ZSlixbVL0MLBm":{"uri":"/melonJS/docs/melonjs/DropTarget.html#name"},"XN6qCqyN9KHeNO9w4Km79":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onVisibilityChange"},"gxf-p1QaOzggOqEmo-p7D":{"uri":"/melonJS/docs/melonjs/DropTarget.html#points"},"w94FtrI6M-OgBAedD1VE5":{"uri":"/melonJS/docs/melonjs/DropTarget.html#pos"},"WttLVPXzumI3AC9Ws8vTN":{"uri":"/melonJS/docs/melonjs/DropTarget.html#right"},"c8-VqLBQeUqeRa0ruQtso":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shader"},"-gvrkgdCAcl8wYnS5wVnE":{"uri":"/melonJS/docs/melonjs/DropTarget.html#tint"},"FyxjragVplOxM4Pj_s8xY":{"uri":"/melonJS/docs/melonjs/DropTarget.html#top"},"G0-2ZAZ9k7LlRwdvjVe-N":{"uri":"/melonJS/docs/melonjs/DropTarget.html#type"},"LsHlTvGbGII00slURv15a":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateWhenPaused"},"ymnXe8ExSNPfQmBbgPfqh":{"uri":"/melonJS/docs/melonjs/DropTarget.html#width"},"uU70P-vj7JUlbBt2sBpsa":{"uri":"/melonJS/docs/melonjs/DropTarget.html#angleTo"},"0svWKcZgxU-V-yIbZ6-P7":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerOn"},"QlM_fQW-kwBnaCh_2zt9L":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkOnMe"},"DTPVWYlfGyPYuWavCEsmT":{"uri":"/melonJS/docs/melonjs/DropTarget.html#clone"},"mCghEP4TVn15gfkRE5tS4":{"uri":"/melonJS/docs/melonjs/DropTarget.html#constructor"},"Rlx4VhIlD6BgjH2IKI4Dt":{"uri":"/melonJS/docs/melonjs/DropTarget.html#contains"},"JSw-CY5gQVvg8rfPSP9sB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#copy"},"-GfS-g9GQvDh943EoT32g":{"uri":"/melonJS/docs/melonjs/DropTarget.html#distanceTo"},"1kPeFY3S4U3B6LmGHYzyl":{"uri":"/melonJS/docs/melonjs/DropTarget.html#draw"},"kE--R27w3g6jVeVQDCU6Q":{"uri":"/melonJS/docs/melonjs/DropTarget.html#drop"},"7ekNYUdRwYDb014zE_Awl":{"uri":"/melonJS/docs/melonjs/DropTarget.html#equals"},"dKekuRtPtv3dW4kvibF4M":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipX"},"jdyI8Pb4rWSTye9BDB6-v":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipY"},"RrphgZFqnBLQW_t32iz25":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getAbsolutePosition"},"ZONM4tAtfda_2061jeMrS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getBounds"},"JkO3prCNnOL5pDEQycoGy":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getIndices"},"lMU3jl8SnTfiwfwiHo5mJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getOpacity"},"la2_O3NDLSM-4xdPSeY69":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isConvex"},"fyXH4sHZkSFq_jSzaeN4D":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFinite"},"JGN97HBNW63tG0pSMDpjJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#lookAt"},"oPB38JARyPR5U_xCSGzTM":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onCollision"},"BN9YIyyJcH0wdB3wHekp-":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onDestroyEvent"},"cRwxaVNUWsPEVb3BhHXg_":{"uri":"/melonJS/docs/melonjs/DropTarget.html#overlaps"},"iVtOYmD-BwKN0n_gIuKtm":{"uri":"/melonJS/docs/melonjs/DropTarget.html#postDraw"},"Erb87e9Jli_-SzPiGANLl":{"uri":"/melonJS/docs/melonjs/DropTarget.html#preDraw"},"LYVe8tn6IwGV7G0pZpB6D":{"uri":"/melonJS/docs/melonjs/DropTarget.html#recalc"},"cWGhG8OwFOe_AzEzJpCNQ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#resize"},"5l00JyBrH0zDx6Le4J-pH":{"uri":"/melonJS/docs/melonjs/DropTarget.html#rotate"},"Mucil_N1SLg0x0CCCXNw1":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scale"},"pjTrFmyFFGHFpulL9IWF7":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scaleV"},"QAxJz4BfrDyiMRWKRao7p":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setCheckMethod"},"js73VvTuT4WbTz8-lWuHp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setOpacity"},"5gpSn8sIrq7cWFdjLm2pD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setShape"},"tBlNtBufeyZ8QjQvcc530":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setVertices"},"rumEbzuddBRu7WEX83W-m":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shift"},"AZoHg5ZxJC8pIqRzLjmU4":{"uri":"/melonJS/docs/melonjs/DropTarget.html#to2d"},"wiMe1J3KtJmFTtWwuph7e":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toIso"},"aJQIZFIoGrYPzB0OYf8mq":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toPolygon"},"JavzT0M1u7-RX-3C4cA_w":{"uri":"/melonJS/docs/melonjs/DropTarget.html#transform"},"3aAN4InUixVVRTVrNMJ_w":{"uri":"/melonJS/docs/melonjs/DropTarget.html#translate"},"x1KxhdggWcuJ_Kz0WtRgB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#union"},"IeGxZkOrurd_2alwFZ_b0":{"uri":"/melonJS/docs/melonjs/DropTarget.html#update"},"8xCLjqJswLQ2Sfxq51E49":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateBounds"},"zQ9Qp-FAl47pH6nw5J3LD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onAnchorUpdate"},"Y_cJWMBVz-lIT-Ju3IDZv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html"},"Jpgw6FPOkIYp7UgwP5PwR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alive"},"MRx1TFGDO1FinTAyk2UX5":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alpha"},"n6t6EdQHXKeaKB9UofbD_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alwaysUpdate"},"3b2I3Hvcpgvw0XlPprdes":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#ancestor"},"C5OoisLD0dexRlRARHhmj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#anchorPoint"},"Z7rSHCXtXE8UMjzbgsCE5":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#autoTransform"},"sLHr0q5wX36LJq0ZQbh2v":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#blendMode"},"qwpqcy_7Ik-bxvYW-Eika":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#body"},"8K1PwpeYKkAcVV_yZPDYL":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#bottom"},"Fs9-PmdPfMVSm2tqQxreD":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerX"},"h5Sa1_Cv3x3L2Cu0dtjdd":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerY"},"rkq6js7HU3etl1RVGEXfW":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#currentTransform"},"k6BID033de9ikG1iC4V8P":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#depth"},"6ybGDh2Fe-SETfSctuIWs":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#floating"},"dW5s_vhZ6mNnKdqQ7csPq":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#GUID"},"HAC0Z3EqdhZKmD49MQBhh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#height"},"_2ynX8xF7uht0dfCrijR3":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#id"},"lSD6rrdVSYe9Eau0O1jDm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#inViewport"},"jPUE4qYwopt591LQuVhu3":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isDirty"},"dsbFuHNxWK1DfZQr0ONT-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedX"},"oTikPLXCRgYSWawOHx9Cj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedY"},"FggTY9qAFeAeQBax6xgT2":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFloating"},"TVdGcT3IYCxBbRNme8r_S":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isKinematic"},"Z_V5WcCM07q73pyWKctFO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isPersistent"},"1qGUVd2BfAMXosNW4xaTH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#left"},"TMABxus8axDSTe9Wuz0jI":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#mask"},"MOX0xmcv3avpIe7qKzEKZ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#name"},"EUg1nNJCXyYiYcw4WBV_x":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onVisibilityChange"},"_1y9kNOgMXO60yIGqhAmh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#points"},"Ed8ACF_fKR04WoKFZcHDY":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#pos"},"oLLJTXG3ATHB5RQpkONYc":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#renderable"},"NzolicblLN-vEgNc71nax":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#right"},"ROIOKltrCZS17Zws6ZNZp":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shader"},"eL-uatvMrHTtQSwJk9iX9":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#tint"},"xbIIuBZ17rNo1UmJF87a6":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#top"},"mLI8Zx36-p-HD8ewhv3-L":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#type"},"3xaUiVO9EBLqeSZwqNkyX":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateWhenPaused"},"LFZvoWzBXWz5MnFAARU6M":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#width"},"cqm173n-VM62HRdfP0D0F":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#angleTo"},"COsaYBNbBOzbwx4PJvoKm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerOn"},"oo1h7VCiH5lq-G4mmaDQw":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#clone"},"rL6EB4K6-pa8HnxWqMbri":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#constructor"},"6Cn6vIAAlSqBi8xVohelR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#contains"},"tENP9L3BngxrEI1EkG91a":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#copy"},"BPI0_ffiVbaVwkBDDuGKO":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#distanceTo"},"nmieReYNGrn4Bz70IKM51":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#equals"},"6OpNgEmGbvqdioOJFaoMc":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipX"},"MfDhHx0Zm5LskyqAwhFWm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipY"},"ER9LPeNU0GvP1BtNrqcCY":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getAbsolutePosition"},"cda6ZAxXhRWimrofNLilK":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getBounds"},"avHzb2LMuGa0Yi-7uZPnk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getIndices"},"S1mF8ITkAf0SApU5YYEk-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getOpacity"},"h78iAyPGYr-Atgl1MICQ-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isConvex"},"GeiDbKEJUd0morvS_jqtu":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFinite"},"BTixshKRZCoDldOf-MkmJ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#lookAt"},"K_8CC176K_MqsqqJCzAKt":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onBodyUpdate"},"sxXScqnZTuYtSTBfLSD5m":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onCollision"},"KNHGNArRLwFa-Bto-XCaR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDeactivateEvent"},"4V6VKgyh6mFo5ptbnZvDF":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDestroyEvent"},"js_5cdlMho1FQkV53VYal":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#overlaps"},"6ivyZoCl19S1TS4omFKNJ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#postDraw"},"FIYtdCKsUabyRK2X_9_WL":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#preDraw"},"8XOz98FjgaZF4OrPizckK":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#recalc"},"XpuAWQ_aSbhKvtSZRhnR_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#resize"},"9CmhRHzTTcPGg46rTItR7":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#rotate"},"PcYGVxdvAhGrddnfIBUDv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scale"},"NamI7gT1zyRdnrLNbyn0z":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scaleV"},"Z9zeym7X577Vrg4pNCMd6":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setOpacity"},"m2uLZJ-i6PdcHrEABP_vl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setShape"},"9t65tN8-Fn1yBheTMBKS1":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setVertices"},"4v3Cmbz92ePo0LpE6ZGUC":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shift"},"RXffFY97eVvYijLHFHVe0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#to2d"},"ulfH41Fmg5H41oS5AISrh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toIso"},"J784hKNFIsHkbkV8Oqd5Z":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toPolygon"},"C5VKc_WtK3NvIrbUkyECm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#transform"},"0MIy49TA80ru58FlmyC0V":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#translate"},"mqaMQofPda7b8Zlg_4UJ8":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#union"},"FmP1gktMlXceyiDDdK6q7":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#update"},"4wwG3RdlIv7nsagNnizyQ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateBounds"},"5Rd5yFSIKErhQVE29b2MX":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#draw"},"3ALA2-hv-bPKLW1TqC2s0":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onAnchorUpdate"},"ONP2snVWr9EbbmHF5rr9E":{"uri":"/melonJS/docs/melonjs/Ellipse.html"},"pF970S7IGsnOtLVlXK7cM":{"uri":"/melonJS/docs/melonjs/Ellipse.html#pos"},"4t8lThmi6XkX2HBxZTduP":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radius"},"ULmLKEHynT3MZ3XQYtHDo":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusSq"},"f3L1ouV1ejQpjEb6K1ySa":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusV"},"LmCQ8PLNcC_lXnc3HAtaH":{"uri":"/melonJS/docs/melonjs/Ellipse.html#ratio"},"i6nn7Z3muXDAiJwMyoDp6":{"uri":"/melonJS/docs/melonjs/Ellipse.html#type"},"o7veAtOuJYvfbhn6x3Gib":{"uri":"/melonJS/docs/melonjs/Ellipse.html#_bounds"},"LxKB7zvjxHFCNNK2JHoEM":{"uri":"/melonJS/docs/melonjs/Ellipse.html#clone"},"P4V8ZUApXF_ZsRtETHGfI":{"uri":"/melonJS/docs/melonjs/Ellipse.html#constructor"},"5FCexmxygQBfx-cRoUBSp":{"uri":"/melonJS/docs/melonjs/Ellipse.html#contains"},"hQMV94x04nu8v2YZYPrQ9":{"uri":"/melonJS/docs/melonjs/Ellipse.html#getBounds"},"Ci2dCxDalngEgvP-SQxm3":{"uri":"/melonJS/docs/melonjs/Ellipse.html#rotate"},"MzcuJ8RMnD__9LCl6tONR":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scale"},"F1IjhAnmdE4xGBikkhMys":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scaleV"},"46ClZD3-bz0LTyTR2MWRj":{"uri":"/melonJS/docs/melonjs/Ellipse.html#setShape"},"pGD1WO84sRTpeaiZSSbFA":{"uri":"/melonJS/docs/melonjs/Ellipse.html#transform"},"dDv-llKu6WbtXE30Ls-uu":{"uri":"/melonJS/docs/melonjs/Ellipse.html#translate"},"fdciJ3SziN-GrKYLWziyU":{"uri":"/melonJS/docs/melonjs/Entity.html"},"nuMqi6pCaS1oUT0yRSMyJ":{"uri":"/melonJS/docs/melonjs/Entity.html#alive"},"wKIT-Pyc2-piLfttZThaD":{"uri":"/melonJS/docs/melonjs/Entity.html#alpha"},"PIFrgNOr0J9SRuuD2Bxaj":{"uri":"/melonJS/docs/melonjs/Entity.html#alwaysUpdate"},"OREEFPbNL0f_8kjpewOWe":{"uri":"/melonJS/docs/melonjs/Entity.html#ancestor"},"poIYXYQjtifRo961iySYI":{"uri":"/melonJS/docs/melonjs/Entity.html#anchorPoint"},"eg2yLmJmAigzkAS12YDWE":{"uri":"/melonJS/docs/melonjs/Entity.html#autoTransform"},"unw9befgplC5JRsDLtjBf":{"uri":"/melonJS/docs/melonjs/Entity.html#blendMode"},"fvAZkRAmRGgQFmvnVPbN3":{"uri":"/melonJS/docs/melonjs/Entity.html#body"},"aBRTlMFzz8-PYrhy4_Lrn":{"uri":"/melonJS/docs/melonjs/Entity.html#bottom"},"QYWqAQMDcAc9RAlUEz29U":{"uri":"/melonJS/docs/melonjs/Entity.html#centerX"},"DGhelPK7n2Oq5jQ5XhqPX":{"uri":"/melonJS/docs/melonjs/Entity.html#centerY"},"1waFs31yfCgKLi9GVWSAz":{"uri":"/melonJS/docs/melonjs/Entity.html#currentTransform"},"KLStcPD9lNPvvdnwCUNoY":{"uri":"/melonJS/docs/melonjs/Entity.html#depth"},"VWO_qqWsBcpXlPiUquheM":{"uri":"/melonJS/docs/melonjs/Entity.html#floating"},"d9h7aT2EdUosHZgB_bSnO":{"uri":"/melonJS/docs/melonjs/Entity.html#GUID"},"a36JDrWsFqtuCpfVyX1dF":{"uri":"/melonJS/docs/melonjs/Entity.html#height"},"6F7aBfLO1btaqm1oD5our":{"uri":"/melonJS/docs/melonjs/Entity.html#id"},"Cb2ooM1daV6_pX2HNCGBw":{"uri":"/melonJS/docs/melonjs/Entity.html#inViewport"},"RQYoBgvT2gBLfdu5sezT-":{"uri":"/melonJS/docs/melonjs/Entity.html#isDirty"},"sYAiYN4DhwgOb9nf3EJV-":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedX"},"LWTM1X5RKK3FD2NPi0zde":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedY"},"rBnITIBkmSo-8yksO6AFB":{"uri":"/melonJS/docs/melonjs/Entity.html#isFloating"},"mhqUYpVCTYH5iawcTGNqX":{"uri":"/melonJS/docs/melonjs/Entity.html#isKinematic"},"taWjuR2GphdbJJE0hEW1X":{"uri":"/melonJS/docs/melonjs/Entity.html#isPersistent"},"D8ylnfzHVAkfuQxiV5Wut":{"uri":"/melonJS/docs/melonjs/Entity.html#left"},"67HzgBQxTKm3i6er2dval":{"uri":"/melonJS/docs/melonjs/Entity.html#mask"},"e2J9qGWS_aZeNU9BvkP1d":{"uri":"/melonJS/docs/melonjs/Entity.html#name"},"-nSuVMzbUOecJ4KM3Q3fN":{"uri":"/melonJS/docs/melonjs/Entity.html#onVisibilityChange"},"ipLupAc7hBosF7vj92D-k":{"uri":"/melonJS/docs/melonjs/Entity.html#points"},"qWA4BJ66PYeqInMP2Wc7W":{"uri":"/melonJS/docs/melonjs/Entity.html#pos"},"3MalYjmwb8SYxgAdIRYV8":{"uri":"/melonJS/docs/melonjs/Entity.html#renderable"},"ykQab9KSUi30HRegLtGWA":{"uri":"/melonJS/docs/melonjs/Entity.html#right"},"MXGnoPXKOa8oJD_uwwz-e":{"uri":"/melonJS/docs/melonjs/Entity.html#shader"},"90jccQgrs-OonOptBZFGo":{"uri":"/melonJS/docs/melonjs/Entity.html#tint"},"NysEyFQgt71va5YT1tWFh":{"uri":"/melonJS/docs/melonjs/Entity.html#top"},"W5jtYyuz2UzNTW-hacASZ":{"uri":"/melonJS/docs/melonjs/Entity.html#type"},"6kpOdNJjFrYJTCXHz2MS_":{"uri":"/melonJS/docs/melonjs/Entity.html#updateWhenPaused"},"K7raLW5C6HlftDRvcal50":{"uri":"/melonJS/docs/melonjs/Entity.html#width"},"fNrqUZLjGd_URoH77aiDU":{"uri":"/melonJS/docs/melonjs/Entity.html#angleTo"},"sbCx_WPIyvyVZF_x8B60x":{"uri":"/melonJS/docs/melonjs/Entity.html#centerOn"},"W7_K58D6k4_J4E8teTKqF":{"uri":"/melonJS/docs/melonjs/Entity.html#clone"},"jyhRD9-OmNYPMCVzlZdRX":{"uri":"/melonJS/docs/melonjs/Entity.html#constructor"},"fIQpRrzid_vL8Jy5z2SdT":{"uri":"/melonJS/docs/melonjs/Entity.html#contains"},"bdxTRvvHSgum6aJUFjYw7":{"uri":"/melonJS/docs/melonjs/Entity.html#copy"},"VI_uztWRtj3C0vIIYCtzX":{"uri":"/melonJS/docs/melonjs/Entity.html#distanceTo"},"01eFCZOqlDl6ZGkDsLwIO":{"uri":"/melonJS/docs/melonjs/Entity.html#equals"},"3tHefedWF5jRS174gxv5U":{"uri":"/melonJS/docs/melonjs/Entity.html#flipX"},"jdHwSUhbA1_CzWvDIQkX7":{"uri":"/melonJS/docs/melonjs/Entity.html#flipY"},"XM_FPF3WjTNmnlS2v9djs":{"uri":"/melonJS/docs/melonjs/Entity.html#getAbsolutePosition"},"TJ83tKgq4EsmaG3Mi0bYN":{"uri":"/melonJS/docs/melonjs/Entity.html#getBounds"},"LUwu8Wsr5qeXPNCRqXfX8":{"uri":"/melonJS/docs/melonjs/Entity.html#getIndices"},"ZuDCAG7WmorDLwHqYFRKI":{"uri":"/melonJS/docs/melonjs/Entity.html#getOpacity"},"3T6vaOZ-g4jmNW8Lg4ic1":{"uri":"/melonJS/docs/melonjs/Entity.html#isConvex"},"l3x72iQ0UtywwAMcL-zTt":{"uri":"/melonJS/docs/melonjs/Entity.html#isFinite"},"JOOA8-qtGHyFg0zYETwpY":{"uri":"/melonJS/docs/melonjs/Entity.html#lookAt"},"YVedwXM0t_BJ7nC4IyKaw":{"uri":"/melonJS/docs/melonjs/Entity.html#onBodyUpdate"},"jwVxTS0tCGtnPmnaCKPuD":{"uri":"/melonJS/docs/melonjs/Entity.html#onCollision"},"Lhk0A62mCB0Zeme8VLU70":{"uri":"/melonJS/docs/melonjs/Entity.html#onDeactivateEvent"},"SiDTzHyZOAxmR4hYWNEcP":{"uri":"/melonJS/docs/melonjs/Entity.html#onDestroyEvent"},"AaEXVP4ZHJMjira72Jiup":{"uri":"/melonJS/docs/melonjs/Entity.html#overlaps"},"gX9e7JAOZbg8w2dpdXY3Y":{"uri":"/melonJS/docs/melonjs/Entity.html#postDraw"},"IEBKDdSc_iug2Ccchqo4e":{"uri":"/melonJS/docs/melonjs/Entity.html#preDraw"},"JCmvjgQMjBwWjsLpN2m_s":{"uri":"/melonJS/docs/melonjs/Entity.html#recalc"},"R2Nn-OzgtUkufADnMjm2j":{"uri":"/melonJS/docs/melonjs/Entity.html#resize"},"TYHmZkFmp04J1ca7a0xm_":{"uri":"/melonJS/docs/melonjs/Entity.html#rotate"},"q89Ke6Le6SbbZuT_KPnag":{"uri":"/melonJS/docs/melonjs/Entity.html#scale"},"EcgFXrks07YSAvR7dhvYe":{"uri":"/melonJS/docs/melonjs/Entity.html#scaleV"},"Tu5Tj94_JMj_FiQqYjyG8":{"uri":"/melonJS/docs/melonjs/Entity.html#setOpacity"},"vW50myq97hIXTMX0K4Skf":{"uri":"/melonJS/docs/melonjs/Entity.html#setShape"},"bJbY2pZVTaNsD_NmVQ9nT":{"uri":"/melonJS/docs/melonjs/Entity.html#setVertices"},"uibqtIlBzNM2mSy9jG-Mb":{"uri":"/melonJS/docs/melonjs/Entity.html#shift"},"NL26mdQdVyjx1Jkeiue51":{"uri":"/melonJS/docs/melonjs/Entity.html#to2d"},"poKjMIW3w-D5G0jV2re6p":{"uri":"/melonJS/docs/melonjs/Entity.html#toIso"},"wDUDrQmlkjJV0UOdil0tU":{"uri":"/melonJS/docs/melonjs/Entity.html#toPolygon"},"vGxoNVDALgzijgcBpKV_E":{"uri":"/melonJS/docs/melonjs/Entity.html#transform"},"BS-ONEnL1J1svaJ_Ybe3T":{"uri":"/melonJS/docs/melonjs/Entity.html#translate"},"Uiy2iQ2SNHJmh9pfSQAX2":{"uri":"/melonJS/docs/melonjs/Entity.html#union"},"lBzjKqnyPGOH2Ee9FpdjA":{"uri":"/melonJS/docs/melonjs/Entity.html#update"},"tYRVks9D8kwUowMMqrdeS":{"uri":"/melonJS/docs/melonjs/Entity.html#updateBounds"},"8pT3foF-jlboEPDWL1TC7":{"uri":"/melonJS/docs/melonjs/Entity.html#draw"},"bVvfEw9yKP7U-kC_WkP6v":{"uri":"/melonJS/docs/melonjs/Entity.html#onAnchorUpdate"},"-56a2LZHFZL_x4TKULz_s":{"uri":"/melonJS/docs/melonjs/GLShader.html"},"p48j8tJwRL7tTS0nzWs58":{"uri":"/melonJS/docs/melonjs/GLShader.html#attributes"},"zlpBsudyy2lc-d1-AajJ0":{"uri":"/melonJS/docs/melonjs/GLShader.html#fragment"},"iLFt8ZmYo31cN88hmq-MB":{"uri":"/melonJS/docs/melonjs/GLShader.html#gl"},"xQ4CoUnELQZqiStlmHZ1Y":{"uri":"/melonJS/docs/melonjs/GLShader.html#program"},"wGhAvwGboofTkHKhnNFT7":{"uri":"/melonJS/docs/melonjs/GLShader.html#uniforms"},"JB-3FLQWGijHI7XezSRuo":{"uri":"/melonJS/docs/melonjs/GLShader.html#vertex"},"qctpPDiVNOjFnt5iZgjZ4":{"uri":"/melonJS/docs/melonjs/GLShader.html#bind"},"u104aLM7S29645qc4jWv2":{"uri":"/melonJS/docs/melonjs/GLShader.html#constructor"},"BWvHN4775mlIa2SrtBvRB":{"uri":"/melonJS/docs/melonjs/GLShader.html#destroy"},"UZ8vG9xLUy46e4y5fUi2Y":{"uri":"/melonJS/docs/melonjs/GLShader.html#getAttribLocation"},"df44A4cHBK_fPYrpXzI-G":{"uri":"/melonJS/docs/melonjs/GLShader.html#setUniform"},"D0bK6ZSts6-YZ3EiyldMm":{"uri":"/melonJS/docs/melonjs/GLShader.html#setVertexAttributes"},"F8HOLP0uwgqoAB8GAdAsC":{"uri":"/melonJS/docs/melonjs/GUI_Object.html"},"TikWq5E1P_-gl93j1-EQP":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alpha"},"md8SNTwQ7q4jhjTisfUud":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alwaysUpdate"},"9yUgaC34t8PepODD2SiJ6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#ancestor"},"DIph-xPl1FQzPVnB_BKdp":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#anchorPoint"},"7peCDF-bEEvt8rCB7Em5d":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationpause"},"F193PoQLYVjnN_ErBoB5U":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationspeed"},"QCDsBXoJf-Q6d_S5OKWgL":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#autoTransform"},"4lYvK-PO_4WrjbyWjnyGZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#blendMode"},"u1xs3NGkIWbNw48GFg10q":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#body"},"SXa41JLEOiHpsPY_vQFQ7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#bottom"},"japhLqCkXoB5tWmkldj2A":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerX"},"XfFGWCNwcfJKgyNAbO8HT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerY"},"6RE7M5e3-JZ5lLAUtvctq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#currentTransform"},"dWcCWksmvxfOwjpOStuha":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#depth"},"VdSR0ZnYiPJrXF_LPKyWQ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#floating"},"mF6fAg5SpoVLqfgmCvSLh":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#GUID"},"zDA-vWjKPmgh1Ar67DPEz":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#height"},"vElWcWM0S4i0rhTz-sRg6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#inViewport"},"czhw-Wwn_84Cf1geOA44G":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isDirty"},"grIaovEGHxVu7HjbmM2qG":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedX"},"bNYe-YpKot-BxZb_oyclT":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedY"},"rPDGMh5YsB2mH6W7AA62E":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFloating"},"JhxtdDQ6v5KHpu9saDsbP":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isKinematic"},"27Vw25wkqgaD0C7StsFSR":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isPersistent"},"debLMdLVEK9o4PhXSMdWW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#left"},"nT52s8nnTZA9e9P3VWZmY":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#mask"},"eu5iaGu0nuVeHs4RH14VA":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#name"},"L22lHX_1RdMmqfxE75B9e":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#offset"},"v9FwslHAD3c1pXmiD-6fE":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onVisibilityChange"},"o27X7TuMeYbDtn1zoPB39":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#points"},"d4GhZ6r0Dd1Bat9NPK5KA":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pos"},"ykSKpusOrge33w9E61PQm":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#right"},"kcyyPVX6FEC0kEg7oh3ht":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shader"},"bM0A9CijNda6dfX5J5PQW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#source"},"MocBR7OWz5dxO4uaMIaae":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#tint"},"YWQqPWo1SWl0vUS2vTSD1":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#top"},"UVS4MjWgdAF_iIiq2wkbe":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#type"},"40GmY9boaCMDmrB49esoy":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateWhenPaused"},"okWKcI6bj-u65PYTc0DsZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#width"},"-Y98Uwulgej19Dcd9Ye8W":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#addAnimation"},"6KTFzezZ2zdcaUBI6RVwJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#angleTo"},"sCS_AqnScNnPm4X71W0EW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerOn"},"F-iwffQ2rz2M2XY1nwVAZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#clone"},"Kcta7kTDsZXaIWCsa68Y6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#constructor"},"N6hdI2044De75OD2jZV06":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#contains"},"dYYvjt4DUjOcRN1tCZqzB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#copy"},"cj9Bcd_d-EtalUK1cfm_t":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#distanceTo"},"Ut12N8fTv7RrySBcaZshY":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#equals"},"SWxJKL3a0tiMan3g7cX42":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flicker"},"oEauUNBt1DN-la4w0KI0v":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipX"},"spNxKE_aMVc2ZiMBzS8Dq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipY"},"x50ZIcpqcmaYzkd2o7XjY":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getAbsolutePosition"},"pcxirn5x7CW-BE-kl_aSZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getBounds"},"utzPYd1Lnqj2oH2dh9kj2":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getCurrentAnimationFrame"},"5Aw4xeBFs7wsosbqp-hQU":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getIndices"},"4GfLBKP6p7EQjZnBXbaSW":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getOpacity"},"gM1aGfDTayuTW0ShOjbxE":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isConvex"},"aFP0BPsmqFQ_Oyg0hxfrh":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isCurrentAnimation"},"viSXhiNhdsKtAgdqhGQ-z":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFinite"},"6lIXF_cqtpI_YvVm11lVx":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlickering"},"ULFlgfOX5F7JrfTNZRXhr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#lookAt"},"0D-GBLY_4yX0aRAhvXnI7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onCollision"},"0ENB_D5wpXX4zTZ0YX9I5":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onDestroyEvent"},"tUcrvXrAyFJR4PAevoUim":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#overlaps"},"8TtbwrlIQyBJ8iYbaeor3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#postDraw"},"OY0Yvs9FRMrPxWdJzbhLZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#preDraw"},"DO2N1WmUrRkpk3mxXkWl4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#recalc"},"M7QkGa2GCJlhABeY9Kg54":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#resize"},"qq1rxWhTEneYOiRUyLFMp":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#reverseAnimation"},"4Qe2UKscmbSArmF9NV1Lt":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#rotate"},"2WmbFpiGwHAqvlwry2I-i":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scale"},"qqWhkXX40zl8tgLP6STFq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scaleV"},"_S_9QbvEWIvy2bddnbvHf":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setAnimationFrame"},"FQQ4051Lmjd21mB8aBlk4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setCurrentAnimation"},"gY-mcRrti9NBjj3620IhP":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setOpacity"},"TmwYAa_jpjkTERdNJGEu0":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setRegion"},"BQeFHlGADCcbxSS61N8sB":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setShape"},"K2T7JXFt7VNKdIwnpDK1d":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setVertices"},"dNqQrPbqhIFfZx28Xn6jy":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shift"},"iY2OjGldQYc253tDhaUqc":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#to2d"},"DAknMGF-dfv1mxsCtlNd4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toIso"},"jvtZur2MfTCoS4LCfCkQ4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toPolygon"},"4J_HjNDEnNQgGR9ATyzis":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#transform"},"E8DExD_2YJXryzINhpQsl":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#translate"},"oNP00rgUsq1oM4I5GAJ8l":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#union"},"VTcH2FimCMTGx4q-RXUdq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateBounds"},"YYHlHpy7zrldoMeTPBhZK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#draw"},"L_wkazB754s5aswu0uybO":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#update"},"1gIP_f3wKC1BIxQ5a4SFR":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onAnchorUpdate"},"kCE_kfq3zU0PPGp7Qugw8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html"},"Zvuq8MLyr5Up1M57O2OBK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alpha"},"O_uiC2oNmgCCsvprpkf4D":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alwaysUpdate"},"G38tIK_ur1vCrV1Zu80Ri":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ancestor"},"Gf2v01XQyH62bpOVe6i92":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#anchorPoint"},"2SlJAtSGoGys_cVPRxjRO":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationpause"},"-JWW75pk4XL5nMl7DYW6q":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationspeed"},"SX9spPUP5yZUo0h49gKPh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#autoTransform"},"LgHuSH82bssZef4zgJrw3":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#blendMode"},"vu1IUQGt7qQS5EGJbzOuD":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#body"},"Rp1Ih3PlYZiDa3ocwKLIc":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#bottom"},"TPIze7uBIHMKp4KA4jfUD":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerX"},"3Yw2Tzf8eXF64SYL4Rr_0":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerY"},"b3VnlL9br-nddDIpr_1q-":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#currentTransform"},"e4GZn6CPRXAfzsbJMG8JL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#depth"},"MGnmALRg8Cx_2l3-pJarB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#floating"},"jTeb5-3wNfVfFWxzfzRbY":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#GUID"},"5pG61zPrKSukDViiFMemT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#height"},"Ql84nIWZ1AP_x_xkKv9kj":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#inViewport"},"nxdnPWx7by-gENNsF7sPC":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isDirty"},"Y1CHI2EhfionSsQeQc9mL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedX"},"PVId6YcPWK9qOIu4l9ES_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedY"},"LjqvlGGx3NbHQDW6a-8B9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFloating"},"jWUhgXlbmRlP6ar_mHlFz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isKinematic"},"m-blcpWqz8AbrRiU0iTS5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isPersistent"},"0LP54R7Qak1QqoMz9E1r1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#left"},"vwiE-AKhm40-YXeeEOAS8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#mask"},"J3MkpP5pmaUQVP9BCUnF8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#name"},"FVitBbjCTONg2WE5B9Afb":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#offset"},"Ne3RBqCM2KMcY7FkZ9oB6":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onVisibilityChange"},"XlDEmIafBCwFai0zIdKWR":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#points"},"t7PXL3IEUfE5AzOTfvZNw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pos"},"U_DH2ssXUtZoIIIz5zihI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ratio"},"lkoKRJgswN3nQoApduhQu":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#repeat"},"m5snzKfbEqw7HVSpCkEjo":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#right"},"xH-6SCNZcx9M1frhNFSKR":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shader"},"BRMyJSVuKq3SZghx9biV6":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#source"},"jk89OiyMm_bxdMUuEtgcU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#tint"},"z4jk-CGcGeUSzID4LsjB9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#top"},"JV3L_9FKSwthFuqsAl5-D":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#type"},"gj4oxPJPvir88Sk2QWAQO":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateWhenPaused"},"gPRYT_N2mRYD8GAKkN3DA":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#width"},"3Gc-9OFpz4rHbXXv_VHW6":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#addAnimation"},"9Q3V9QqYxG4pqCqOjXDlX":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#angleTo"},"4iMFLnphBqB9SQjJL81hi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerOn"},"SQJzDRvOFvVZzHkx_lnlw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#clone"},"tmXTiDk5NwmHQqDu8CN-u":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#constructor"},"e2KsT4h4Nvm9NoUk06A5Z":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#contains"},"1wVDWJpxweibT11ajI5ss":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#copy"},"zBMR5WIr6o3yvunAOVsxK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#distanceTo"},"S2zrbBLKcBzHam9Ie2sZY":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#equals"},"UamrUG6hLFG-pIxsHu7jn":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flicker"},"UZaxyQ4TUpM1ErhY_-8w4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipX"},"TUpBPATb7FrotvjLScjMh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipY"},"tW0ZjGi_boydO_RruGUCB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getAbsolutePosition"},"cVAi4_62cTqFzZf5KO6kl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getBounds"},"J0XE26ssvzBiLGHkYlvsV":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getCurrentAnimationFrame"},"QsTb8StubBt4LjfNnpvTZ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getIndices"},"4EnuGUp9gbqhlGUd4lwhW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getOpacity"},"VVOArjGVaTOxky4oMf4A5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isConvex"},"uftYlbbCSv2sjVcFKCwuQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isCurrentAnimation"},"j0vxbg2dqxNfIRICZD12v":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFinite"},"eWODWude3GOFM5mg_4uKW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlickering"},"-Qf_-brKIZnuAIq-Y0VGM":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#lookAt"},"O7Rd0c7uTuVunF6TIDfhH":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onCollision"},"HctcttsA87fN_c8yG1OIQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onDestroyEvent"},"RMe5Fqk-V4sQZ8emDLORo":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#overlaps"},"P1P2XAY-AUF6pPOoQjRiX":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#postDraw"},"Vqq8E1AixqbXVK6n7hMZK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#preDraw"},"T1DnoU2OiZHdbjFTXSchZ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#recalc"},"DKAM61yCoJQUSzk1VZJxi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#resize"},"4WRdp1_ha-Qw_35AV7I7n":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#reverseAnimation"},"_ypIA07dFHkDo4dOBGadT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#rotate"},"o3LT24k63WTWXcVOe4eTX":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scale"},"_wFGRct_1IW0CoOzuOFaz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scaleV"},"dFnlwQi4exG99f2CiYxXB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setAnimationFrame"},"yPebe5ezwRkGub9KMYKoz":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setCurrentAnimation"},"yQbcyxQvtEoVFkpsWkTJ2":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setOpacity"},"bzX0hwr5RsNJAStEBfhh4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setRegion"},"mmTplW92h_pE3-9Ehhlt0":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setShape"},"5QK5G99VsAnKrqx4LNUNs":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setVertices"},"O_G3nrr0n3Y_gK06Q0TPB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shift"},"acj79qvfBuMLtbcurfU5Q":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#to2d"},"RxrPcJIJgCNGA0jWFAkCp":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toIso"},"Myl_JX6_hZN4rb9yhysNL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toPolygon"},"V79I6_CoQsDH6DRGGuK00":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#transform"},"FXRFtO6G471TFTCkK23fc":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#translate"},"NgzhhgM2v2PLI9yq-_nT8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#union"},"pUS8LU40TLR9Myiznr-z4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateBounds"},"DhEf_juk42kbJUWOVP68W":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#draw"},"548bVPonBopGTiN-vAe0d":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#update"},"7ykn_4qRUrHNKsMW30HOa":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onAnchorUpdate"},"MFYJgkAh35VWeTceYd1Oa":{"uri":"/melonJS/docs/melonjs/Light2d.html"},"hU8-yjJhpeZHl_mnDYqfR":{"uri":"/melonJS/docs/melonjs/Light2d.html#alpha"},"IarbOdE6Xle3oNvg9mauK":{"uri":"/melonJS/docs/melonjs/Light2d.html#alwaysUpdate"},"-Y0pwNnW1RkCcQ--Wy_i5":{"uri":"/melonJS/docs/melonjs/Light2d.html#ancestor"},"WiCFnenpnEPeLhWox37On":{"uri":"/melonJS/docs/melonjs/Light2d.html#anchorPoint"},"ash8lzjYYbbmhdigj4S3-":{"uri":"/melonJS/docs/melonjs/Light2d.html#autoTransform"},"UmQpcV89SHqd0YOThCMY1":{"uri":"/melonJS/docs/melonjs/Light2d.html#blendMode"},"JNQZgB9kySKCgu-jXfqww":{"uri":"/melonJS/docs/melonjs/Light2d.html#body"},"WItEgIjRVkLQYfjPt51Uf":{"uri":"/melonJS/docs/melonjs/Light2d.html#bottom"},"4CatFeCWzOJFfCXg2L9D0":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerX"},"V9bqykUitns3npVs8inwN":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerY"},"tO78phSNA6Igu38jvQy5r":{"uri":"/melonJS/docs/melonjs/Light2d.html#color"},"E3-BepVnhU1QgwdrsyZ-x":{"uri":"/melonJS/docs/melonjs/Light2d.html#currentTransform"},"knc3hbdrRODtmFo6wIg56":{"uri":"/melonJS/docs/melonjs/Light2d.html#depth"},"8uR0JpET2MkdN0pLLz5Zx":{"uri":"/melonJS/docs/melonjs/Light2d.html#floating"},"b0SqVSbn5tL8xL-9mB5L7":{"uri":"/melonJS/docs/melonjs/Light2d.html#GUID"},"YmViTkW3rABku7WGeDMe6":{"uri":"/melonJS/docs/melonjs/Light2d.html#height"},"VjHClOM07BgR7fkh8fNPM":{"uri":"/melonJS/docs/melonjs/Light2d.html#intensity"},"4YYEsarHEUd7JZxSVev5u":{"uri":"/melonJS/docs/melonjs/Light2d.html#inViewport"},"_6Cme-ZYjmG2fEqOyshUs":{"uri":"/melonJS/docs/melonjs/Light2d.html#isDirty"},"TbATTz-CzPGOgWcurD6MU":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedX"},"Qshr8ShMkDuoMy3YdNjoj":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedY"},"797iTrnXqJHuQKe8JYADa":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFloating"},"4BopFyrhyvGvvFYOdk5J5":{"uri":"/melonJS/docs/melonjs/Light2d.html#isKinematic"},"IdPXbxvefJ6fcvs26N6X_":{"uri":"/melonJS/docs/melonjs/Light2d.html#isPersistent"},"ds63hJJgTYZD3wDrzBoPr":{"uri":"/melonJS/docs/melonjs/Light2d.html#left"},"nm4mamPrWMO9FCRiaSZfj":{"uri":"/melonJS/docs/melonjs/Light2d.html#mask"},"EsV-yAyTBnlaN4bhoHW4K":{"uri":"/melonJS/docs/melonjs/Light2d.html#name"},"nldDptZxY7qFNLtKYxfYD":{"uri":"/melonJS/docs/melonjs/Light2d.html#onVisibilityChange"},"TgZCElic-OmMohcLjqTmn":{"uri":"/melonJS/docs/melonjs/Light2d.html#points"},"ibU2c9jxYiQC-z96Ub-aO":{"uri":"/melonJS/docs/melonjs/Light2d.html#pos"},"WJGLGU2m83Wsb9S9rDKZa":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusX"},"lpoxkNdJeXD6UdNdwGnl1":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusY"},"xlVNxcDQhHBWLGt5s1O90":{"uri":"/melonJS/docs/melonjs/Light2d.html#right"},"HF7XO9aqu3Zy-cie_bbRC":{"uri":"/melonJS/docs/melonjs/Light2d.html#shader"},"Rhy_NwX5x39iQ0xwKPR_U":{"uri":"/melonJS/docs/melonjs/Light2d.html#tint"},"x9rTcyjb3ME_3ZK6mSXw6":{"uri":"/melonJS/docs/melonjs/Light2d.html#top"},"yxymIrSNGS__zvWnwBXPj":{"uri":"/melonJS/docs/melonjs/Light2d.html#type"},"b1wt9fvvBYNemvK_qT_3J":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateWhenPaused"},"sfw_QO84cBNarTCOpLc0-":{"uri":"/melonJS/docs/melonjs/Light2d.html#width"},"8eBLqVcbk6Pv8e1t9QPz9":{"uri":"/melonJS/docs/melonjs/Light2d.html#angleTo"},"NnH_D4M-SOQZxujetQtji":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerOn"},"NmyeYgRHMKIoJk0Ka1Roc":{"uri":"/melonJS/docs/melonjs/Light2d.html#clone"},"LVHnAzl8Q_Rtt9udCyhrH":{"uri":"/melonJS/docs/melonjs/Light2d.html#constructor"},"cP2LpqLUmDWva0dPVVh0b":{"uri":"/melonJS/docs/melonjs/Light2d.html#contains"},"OieGRmtZCfYwCkKp7gYV6":{"uri":"/melonJS/docs/melonjs/Light2d.html#copy"},"VdzpgF9N4X9iKNzmkjroZ":{"uri":"/melonJS/docs/melonjs/Light2d.html#distanceTo"},"bOBSZZk30fJi5sJOputmG":{"uri":"/melonJS/docs/melonjs/Light2d.html#equals"},"LXR78RKqucv0CpeocsPHR":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipX"},"_gN6fLp3cbp_BpFWFe0cV":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipY"},"wGQ5sUhXw6LHGbq3sW4C4":{"uri":"/melonJS/docs/melonjs/Light2d.html#getAbsolutePosition"},"Gr4LufcRN3QaloLb29BBq":{"uri":"/melonJS/docs/melonjs/Light2d.html#getBounds"},"DbAAOMp999ebRYxuIY7kn":{"uri":"/melonJS/docs/melonjs/Light2d.html#getIndices"},"ecMwOIbh2wY1Xyk8H_jLy":{"uri":"/melonJS/docs/melonjs/Light2d.html#getOpacity"},"rBbFA0cQZiS7o_3XIVO1o":{"uri":"/melonJS/docs/melonjs/Light2d.html#getVisibleArea"},"4pWVzUPbpmRYvuaM-q5Qf":{"uri":"/melonJS/docs/melonjs/Light2d.html#isConvex"},"e4BpxlLW0LAiv3HYE6DcO":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFinite"},"e7EaMFAkRwctSVc6AQSNV":{"uri":"/melonJS/docs/melonjs/Light2d.html#lookAt"},"VYGHoweKPaa3z-diS14ah":{"uri":"/melonJS/docs/melonjs/Light2d.html#onCollision"},"kdgR91kU2EZHGn0P3wSZL":{"uri":"/melonJS/docs/melonjs/Light2d.html#onDestroyEvent"},"y2lnaEHmvtVyZXtpMQ1Ff":{"uri":"/melonJS/docs/melonjs/Light2d.html#overlaps"},"CnNQp6Ujz6QYpuYu8mvQs":{"uri":"/melonJS/docs/melonjs/Light2d.html#postDraw"},"0VhqI3YLk0xOl2Rtq2vyW":{"uri":"/melonJS/docs/melonjs/Light2d.html#preDraw"},"dvz0agt1MI91w46-zspzJ":{"uri":"/melonJS/docs/melonjs/Light2d.html#recalc"},"a3PfLK0jjG_ZzUTZ588OA":{"uri":"/melonJS/docs/melonjs/Light2d.html#resize"},"dQ2lJyWeyC3mnCIxh2rOB":{"uri":"/melonJS/docs/melonjs/Light2d.html#rotate"},"k_4y5MTxRX7zsC90I5XUl":{"uri":"/melonJS/docs/melonjs/Light2d.html#scale"},"b9acARUOH0duTEYBnNa1k":{"uri":"/melonJS/docs/melonjs/Light2d.html#scaleV"},"giNc1PIyb5Fv4XEnDwg6V":{"uri":"/melonJS/docs/melonjs/Light2d.html#setOpacity"},"cTAOrJIVs97X0kF4kvmED":{"uri":"/melonJS/docs/melonjs/Light2d.html#setShape"},"ojkVHUT7lA4EpWs3thNAR":{"uri":"/melonJS/docs/melonjs/Light2d.html#setVertices"},"Z33hkXlwJjeuUU9se2H1F":{"uri":"/melonJS/docs/melonjs/Light2d.html#shift"},"JomAjP320o-Rr5yW1zkxI":{"uri":"/melonJS/docs/melonjs/Light2d.html#to2d"},"QNAdG5fI-hmbDtfboqJek":{"uri":"/melonJS/docs/melonjs/Light2d.html#toIso"},"N7Qn-HSB5o_ZIgSUGhYcK":{"uri":"/melonJS/docs/melonjs/Light2d.html#toPolygon"},"PbTF0gR5da_B0arQinegJ":{"uri":"/melonJS/docs/melonjs/Light2d.html#transform"},"P_RlWjB74lunPShvZAuNP":{"uri":"/melonJS/docs/melonjs/Light2d.html#translate"},"ai-yBs2NACeEzOmhBG4Ee":{"uri":"/melonJS/docs/melonjs/Light2d.html#union"},"NzcidrNzfXXiu2fmj-4qW":{"uri":"/melonJS/docs/melonjs/Light2d.html#update"},"H-VaRiaQJbnaXAVgFUrBh":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateBounds"},"PRq0MFhjYRdr5m176ODN9":{"uri":"/melonJS/docs/melonjs/Light2d.html#draw"},"5ayPOnbpj4nsvQf_fIvvk":{"uri":"/melonJS/docs/melonjs/Light2d.html#onAnchorUpdate"},"ilcaURqOpxD8j44WGMCqn":{"uri":"/melonJS/docs/melonjs/Line.html"},"iB9J3aZ6lMLjYVzOQ5Dv4":{"uri":"/melonJS/docs/melonjs/Line.html#points"},"XkDd6pZRV-d5WRSiSKosU":{"uri":"/melonJS/docs/melonjs/Line.html#pos"},"eBo5YA4C_ygHhRM-1B4Zi":{"uri":"/melonJS/docs/melonjs/Line.html#type"},"vNbnep7R9WTmNUoMqse24":{"uri":"/melonJS/docs/melonjs/Line.html#clone"},"H20EGDCTW5hYPZdsXVjIG":{"uri":"/melonJS/docs/melonjs/Line.html#constructor"},"GpLbPi480pzmJgDMyYP09":{"uri":"/melonJS/docs/melonjs/Line.html#contains"},"aJYaPMfaOXDeECVT2swql":{"uri":"/melonJS/docs/melonjs/Line.html#getBounds"},"Eyh65VDhTLAqtm3h9h8Fp":{"uri":"/melonJS/docs/melonjs/Line.html#getIndices"},"kOA9K63KTABBdsZgTQ8vZ":{"uri":"/melonJS/docs/melonjs/Line.html#isConvex"},"Eh6AoCf_tPumIvNXAN3Vi":{"uri":"/melonJS/docs/melonjs/Line.html#recalc"},"X7fT4SZfKi2IZbeyh8g7r":{"uri":"/melonJS/docs/melonjs/Line.html#rotate"},"CiFMSzrmmw8zAHAj6gZrk":{"uri":"/melonJS/docs/melonjs/Line.html#scale"},"PSNYGKtiU-W_HEpg1b0__":{"uri":"/melonJS/docs/melonjs/Line.html#scaleV"},"DB0KfI9AMP4DjLHUgrF3u":{"uri":"/melonJS/docs/melonjs/Line.html#setShape"},"o44oIWzYiEYbuauz9LHjI":{"uri":"/melonJS/docs/melonjs/Line.html#setVertices"},"CA72fN4ik3T2_9tlpHMds":{"uri":"/melonJS/docs/melonjs/Line.html#shift"},"fSGC4gHUZjtGJ5m1M2FeD":{"uri":"/melonJS/docs/melonjs/Line.html#to2d"},"bQsu5OzHqFI38YwlVY0bI":{"uri":"/melonJS/docs/melonjs/Line.html#toIso"},"rtm1HFcSDxTZl4mKckdEI":{"uri":"/melonJS/docs/melonjs/Line.html#transform"},"TlshmiDPBNlYtcYjsE2i9":{"uri":"/melonJS/docs/melonjs/Line.html#translate"},"d0RqyQFcUGfm_ZeSUxsu8":{"uri":"/melonJS/docs/melonjs/Line.html#updateBounds"},"lr1YRcmSclzRwgMGLmd0r":{"uri":"/melonJS/docs/melonjs/Matrix2d.html"},"9gDkbvKYqwHBVTUGs6OQR":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#tx"},"PFdNkbiJhcj8UMaDg7RWT":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#ty"},"iDJ194lQFmiynYAbMpu4Y":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#apply"},"1clTk4gh9dj0xbW3XQiKg":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#applyInverse"},"FL4sBEug3xGYBKcUAv_pF":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#clone"},"oNsJslrEWCbhsCnC_vL2z":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#constructor"},"wkneI5ajxvEU0L38wJpJe":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#copy"},"yQFY4WTF5psqAv2FnXK4s":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#equals"},"fHRCh_mxIUzfEyMIF8CpW":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#fromMat3d"},"ti9ptCSNGNRHoLdbNsfDP":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#identity"},"Fe9SX82_WQYwW57a-3t5M":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#invert"},"f6SV7n5dI-7yB_SKNxhkW":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#isIdentity"},"dHD7UdTHj_eXXDn2GgdaZ":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#multiply"},"0j6AOBf8RvC0GIIPwdI8z":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#rotate"},"2xFGTLWEdDLXpt_FzLF5E":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scale"},"fgA89sfjBN1sr4j9hs41z":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleV"},"pR77Iklb3x-UZxvhHipvY":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleX"},"bOn-7nADr0XODpzvnMBwP":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleY"},"KEzvv5g9ozCrcrxuA-gwq":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#setTransform"},"pbtPtvmZXLo8V4Nl30jDC":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toArray"},"hF0DLuKxUnQD-6Lv84Yz8":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toString"},"C8czb5UJzP9jWUX_wgys7":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transform"},"KD1_i4pJL57kRMevl5i3I":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#translate"},"KGwUTsxVDXKIgY0YxHQgW":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transpose"},"bmPXjnXUS4pM7-fZHoFqE":{"uri":"/melonJS/docs/melonjs/Matrix3d.html"},"8x3EyizFM9maWfudjTKfJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tx"},"1-BGiDHNPEMp9-OaDhGT_":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ty"},"PhJKlNXdSRzSV3wnXex-L":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tz"},"sSFycCp6c1jnvEzAz0vUI":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#apply"},"G-ipPaqR-0wdoaFdNnU6J":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#applyInverse"},"HFPbE00PYS0K2gDBZlM3c":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#clone"},"u0o87Baupyw1KwsdLODS4":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#constructor"},"T6ci9UdFxEC0gsy-5X7aV":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#copy"},"PwSFv8J2-IWTzGyFDgI7z":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#equals"},"tK_BQjYwq4nEDfRfRl1KI":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#fromMat2d"},"CmDwrZrBgrpW80-icQ7MY":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#identity"},"pjblSALvSnimVDVgEbBbV":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#invert"},"GlpSlVN6IW3ig62mX9V6v":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#isIdentity"},"fkWWhq2y9e9cjRF2eaN8o":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#multiply"},"Ps0T4bQNlRRm9mwDeyjza":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ortho"},"b3s1GFK6fpQQZ2zwQil0Z":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#rotate"},"1TYmE_LxN252BXCWB-8Pm":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scale"},"FpbmXkCm6Bar5dYNxWpIP":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleV"},"s2y18y0wGoYplDlCoTJem":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleX"},"04kLCc5QYlaEx4kHbuFmw":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleY"},"JNiEmTrCs18xMwGxZSY_L":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#setTransform"},"NCEty9jUoLfzcOggG7Rl8":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toArray"},"wQz-2Yl0Yf9bbiSX0YOyD":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toString"},"s4-Nb3jD30d8m6AUM_pwE":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#translate"},"pCuhaWtk3xpxjROvPj7pW":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#transpose"},"Qw2JKQdNxtUf2k0KofA-E":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html"},"_JJZffQHMIdzZhUha_gPw":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alpha"},"zGFrHxyZANhLtAeL3ZWgD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alwaysUpdate"},"TuFjJRv00-uj1lolOEDzt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#ancestor"},"kfQHKSFezLKu-zC37y3Kr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#anchorPoint"},"HRL9MQogVQVkqH6-hDI77":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationpause"},"IsLKXU1XU6dRMrwgwJdlG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationspeed"},"Gpdo4ExUFJorPiB6fTVFw":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#autoTransform"},"hrvlCThl-A-SBKH3tKP7u":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#blendMode"},"AWUWFHotrur8E-m5cwSQX":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#body"},"ustw7konSW9NaoWZg5OKt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#bottom"},"fxQPls3VGKc-bzFSdjUiu":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerX"},"6n3ydrSiFEG7tgxyc3ILg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerY"},"-2oGPsFmZpcs9s54b9ZRH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#currentTransform"},"WK1CmqmgwRx6X_mdeYv3k":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#depth"},"fe3BDFfETqcV9R93cPiLF":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#floating"},"CVs6E9FUwrmhOXAp1RcGd":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#GUID"},"T4ZgVcSpIDV-uT6dabD_A":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#height"},"XNh08R_bSsXXSevbAPQ4E":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#inViewport"},"XSIStayu53BYu2zzWhnD-":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isDirty"},"68OUKM5tZpYj_Mc3OZ2Bd":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedX"},"MUZOQTuSpP1tUEBJzqnDG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedY"},"hk3-HRmwDLukAA1C8jCVM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFloating"},"LME9j77jw-THviwZeh_lr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isKinematic"},"YJ1YCktph8UlDo6JdCoXU":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isPersistent"},"m_2DjOz4T1CbbK6_MoeYN":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#left"},"_AwFphtvo2xJle5K3_pgT":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#mask"},"Dnof-bdZT_GTGxqvsRdwX":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#name"},"9IxjOZYm9OpgRi0TcryBc":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#offset"},"Mc-RzTbbXUCkIk2UIbv_E":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onVisibilityChange"},"eKfqta1iAP8nolX4kOp-W":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#points"},"cMQ71dpKkifP1OMP_qGv7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pos"},"oEOpeWukMJbt8E5h25myB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#right"},"wnTql8hAjxt5y3y4H-Y4I":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shader"},"Z8IXz4FymskCPwSyweKF0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#source"},"SQAN3ksR2oyepVpQ-Oky2":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#tint"},"sp8OIV7WyD4CNVl8NMdEK":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#top"},"Pr_9q_6U7wJ6nbXbmLvG3":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#type"},"R6dmqdfCMTuxrysNjH88Q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateWhenPaused"},"Dpc5WsHTErRaUa09uuPU6":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#width"},"ze2G488vAYNPyTZHpuGUR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#addAnimation"},"xbBNMZmlNz86qmZk6ywHu":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#angleTo"},"l2oQDGDTuVse_rW8p8Md9":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerOn"},"QK8Q363D1hqJ5HUJpP4Sx":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#clone"},"S2wBxwx_R1kd0cASlu7OH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#constructor"},"JxpkWoqx4ak9VwImIS6kI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#contains"},"gvgu8HIwlNQx-50tL5Ozl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#copy"},"wkkPCJBggj1M6-zE2TavA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#distanceTo"},"2_GZCmTp_jcfBHFqUZud5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#equals"},"8OQbzJJ5n5KWhplusQ3D8":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flicker"},"nx2rYBVsUYp4oKzv6Q5P0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipX"},"jO2ati1W1wHZ0bd8CKFGy":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipY"},"gzvJZkkqwa9Elp0wHJBV6":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getAbsolutePosition"},"qUvWiG6lQRE0DtM2J_Bpb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getBounds"},"_fdUuCGE06wi5dvPKLNJU":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getCurrentAnimationFrame"},"e-Og9EvgyUqQg6j3yTnNo":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getIndices"},"oABMbuEoooVueTGppSDBB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getOpacity"},"nNqOtuayHaLcV2XFc54mt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isConvex"},"T9jbsr-PaA0e_3Q6fKsZq":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isCurrentAnimation"},"OPF5Kswosh2zGOSXLTQ4H":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFinite"},"IoT_1ebuUadWsMr1SebIu":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlickering"},"AWkFgJkarLSOROLX7hITL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#lookAt"},"BAZcKzJkqOai2diCiMG7Z":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onCollision"},"Ii9fI2mmt4oMJln5hBo0c":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onDestroyEvent"},"4F1tuFHInOajGPPGrifwD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#overlaps"},"aZOD0FX1m6x5FWiCLaxuM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#postDraw"},"uxXMnDNMhezlXSBtPbGz0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#preDraw"},"N96_fIaSBYZc4jMiDyfCR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#recalc"},"aYruEWy2ZpER1lbAQrnkt":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#resize"},"iAGDmVtAOz2FhsagVFGIH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#reverseAnimation"},"2FBZhX0m9XjgCN9HcgeiA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#rotate"},"QFol70r7GHuwX6ZdGiln3":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scale"},"iecMmK9sYggYU_YJPTGXA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scaleV"},"Y67kjVtnoD2DpgF9jU8DH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setAnimationFrame"},"6tuWckkLvjoB6Qfj44MbK":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setCurrentAnimation"},"IShprQK_v1UWb16B06QnM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setOpacity"},"WMT4ESU5vz-TDVDpsRuG5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setRegion"},"FkMPDtsfJfUC0UVNlEqxD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setShape"},"_bCU06l0_DjX80voKn2gb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setVertices"},"LGcDf7GeEjSSSOzuyDStB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shift"},"RivT97tok-3w6UW78kaFW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#to2d"},"LxXj2Vml56mul9D1G91pv":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toIso"},"um10jwPNJtE0D5c9V_jQO":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toPolygon"},"YGVul3yJDK-M4qz8U9FGI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#transform"},"P9-k3MHuTQtZ0dH7CMedy":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#translate"},"172qFdnhKWaqhSQJ8lvaC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#union"},"eO5naQUNEwOiah94WIW9f":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateBounds"},"6mEgT-YcM4-kGHX9P1HkJ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#draw"},"bvR36vlqjjhqlvPK1lSsc":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#update"},"hYkMBhH1rBDNDNMUWBCX5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onAnchorUpdate"},"5T6OeYVvsvscv7AezpdZv":{"uri":"/melonJS/docs/melonjs/ObjectPool.html"},"2nD2n-rhCWr6znKGhjM8A":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#exists"},"PlQjht-AM2dpzUAwsQIUw":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#getInstanceCount"},"4dWewWJe37Or4XmQZlQkW":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#poolable"},"44z9J0y6_GkIubv9BF5ud":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#pull"},"LqB7jK0TO8ACKX7Mviz_Z":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#purge"},"2TqnsP0a3BMrEkSRJyzwY":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#push"},"DcNtnnU9kdsCmXCsoT2kL":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#register"},"rYMKshixhHMDHARwvvIR5":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html"},"7wR50oV8fW4jvvbgxdNWn":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#x"},"keQuISoRPzg1fh6SfvnOS":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#y"},"9O7BJXFNYVErUyhuOfh-F":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#abs"},"VAwq_BEJewSCLnHwuZnah":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#add"},"QXFAx0rGZEjsKFNmwEeh_":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#angle"},"O7z71q6J8FF0D27Qxr9xl":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceil"},"sC93grzenUODMcVgPv5lB":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceilSelf"},"XSvNZEQDMXwARwpZs0kDK":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clamp"},"XbuZxERfjM7mPepswRgTR":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clampSelf"},"FIcJmTjkH6emXOX5iXBQD":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clone"},"0fpXiFXOjIwYovw4m-i-L":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#constructor"},"za5jkE4NeoIDlAfxPhf_u":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#copy"},"yFSr7YjDx34Nio3zp6XHF":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#cross"},"AxB2EoPPRn2IIThsAyA6b":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#distance"},"8I7yXcbWOHlggulpdpt-n":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#div"},"CJ3hU6Ru_5EDsGhS0Jd1O":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#dot"},"kWvg737jQ-XndUTAKbxLS":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#equals"},"fnZ-FYvr19p3Rxkz-zQoq":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floor"},"2FxDKtoS0FcPdYen7LTZ7":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floorSelf"},"A7wOj4EIrHRp2Xv4eXPZL":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length"},"auIpTLwr4pwTSQ5tTYJ7V":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length2"},"YhAn2VY9oZKj3y3YLsbPS":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#lerp"},"H4YipBxxwb5ZntNHc3TeQ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#maxV"},"lZB712hmcyiNUwp5jrNgJ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#minV"},"Dq6HgXRCKeZzzUSSu3rEj":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#moveTowards"},"PDQLgjEuXzdGNktmE8V-Z":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negate"},"xv5UgZ4UKiuOemlhlUlPW":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negateSelf"},"Zc5-TKTXpR-4b2VBvHSYZ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#normalize"},"tpAltqsSTvtZX2924iGkl":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#perp"},"2B_9QUvvWbJHGHHG4IXgb":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#project"},"-x88p6sP8ZLMXTuWZ9a1O":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#projectN"},"oCibkRlzJki27iUN_86_U":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#rotate"},"VwcXRd24UTOp3B-EhFr0H":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scale"},"-FlarXro2fAWKfhlC1IxJ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scaleV"},"Uwl3KqdOtCMrtr_T3I_04":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#set"},"4BLZHp8WQK6mEwOMByGW4":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setCallback"},"OCxGTS27Vin-05Xcn_dfO":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setMuted"},"Ho9XB4Z-kzrevTLb8qT3E":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setV"},"THdOgFAtCVfuwdGrK5gsl":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setZero"},"TyeMsPBhw3oAVmjDCokFk":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#sub"},"5KZJfxbjvAjtM24ahqb6k":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#to2d"},"m3Aj-xLKXZQ0ESf5K8QsT":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toIso"},"8DakxbVds0k7BpcbXJAPH":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toString"},"7C7yAbxE3b-K2X0LwvRa5":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toVector2d"},"f4IYD7T7dem_ZkGa5_8IJ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html"},"ojOlYfOlTdx8UGaXromEn":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#x"},"fwC6bOpZK_R-cGYEuKDv5":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#y"},"w7feRwkGqrIOv38fdoHz0":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#z"},"ukbnDKYt1_d12oRlxjDEm":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#abs"},"pdBAhuSDgPTySnzgLkGag":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#add"},"fra8hhNdTp6tUqAxRWy_X":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#angle"},"mC3LIts-nPjRPMMFS2-gB":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceil"},"Dj6ZV6mEyCKg6vgUTkenS":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceilSelf"},"XmbgTRIPBKhmw3goJh45t":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clamp"},"jHXWg5hmlypzNn8RlEP3m":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clampSelf"},"Wo2f64ZZfIXiztqU0TByD":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clone"},"_QNyTkewHvy6D5Zrk3cUJ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#constructor"},"0JQkC6f1OIkaf_oDn5hD0":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#copy"},"2y3hTSp3D551eRyAe3Ndu":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#cross"},"X1ruCRaIonoqqT7akkbIc":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#distance"},"ltuU8zPwxZNk8XrnVo510":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#div"},"X3B9ytHhgf9fmHw3jzSyv":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#dot"},"7zZpufqjl69DWTDsiRwun":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#equals"},"32nvXXz199jZOgIZ8orWz":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floor"},"YHHgkzab1p_O0MvUpiPN7":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floorSelf"},"MYhh8Y6Hfl45murREQ_nY":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length"},"3-FaYbjwNQnvsW4R_UviM":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length2"},"5mXwL6ijo98uZkQDydxJA":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#lerp"},"dmybb8Y80nhE78BnDy9J-":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#maxV"},"Si5Ld2OEW3Y0XOvSKgHqo":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#minV"},"EGPEC8zVzJSKm_nZddTcg":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#moveTowards"},"nekMPwuKXnOpND_7YtEZe":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negate"},"UY0PxspohRll_sUaUKoI7":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negateSelf"},"F2BNz26w92vzEnqDvhwbX":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#normalize"},"_oYdkbaXqwHqiMh2LfC0b":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#perp"},"0DI7OMUQN_MdJdn0iRzM2":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#project"},"gqZGzq_uBc3zAPoeg5QJg":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#projectN"},"IzN3BF4Y8_LSxxx_EA4kx":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#rotate"},"TFVd-VhFs1dctxOM4rpCL":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scale"},"TkyI2DbkWxlx3pp3MCpLZ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scaleV"},"ZZ_eEK7UAJkWm-e1VFSFa":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#set"},"Fggl1_AqDQOL1loTKmG-g":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setCallback"},"3OgqfpwrqnMgXHvejmObK":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setMuted"},"yk75l63gWnr0476vKNj2U":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setV"},"wnfdl0_rUIOT2mO0GNXV1":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setZero"},"pT9att2qSSWUsJ0PfIdBx":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#sub"},"yhPjtkAc1LArO0SUVgXUQ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#to2d"},"y4mILM5App-8QH2jYSy4G":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toIso"},"yFpbgQo7TZdMnMFmRCTyo":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toString"},"FS5LUfqMwJxoJ96TAzcYq":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toVector3d"},"O568bZvO3JqZ9io7vP0GV":{"uri":"/melonJS/docs/melonjs/Particle.html"},"mac0UMZWaiwxs1reUc8QS":{"uri":"/melonJS/docs/melonjs/Particle.html#alpha"},"g3zVZ8bLOtwepNvXl-ty6":{"uri":"/melonJS/docs/melonjs/Particle.html#alwaysUpdate"},"FS0nxQbhVuxA6xuRN06Pq":{"uri":"/melonJS/docs/melonjs/Particle.html#ancestor"},"O2Jr3YBmMp2GEelHz0jyL":{"uri":"/melonJS/docs/melonjs/Particle.html#anchorPoint"},"kZA9kU5aivkabWmveyy_Z":{"uri":"/melonJS/docs/melonjs/Particle.html#autoTransform"},"Pp3IgqZt9JFyg-DwLtqVO":{"uri":"/melonJS/docs/melonjs/Particle.html#blendMode"},"DIe-M4XIfrK95abxjvwUY":{"uri":"/melonJS/docs/melonjs/Particle.html#body"},"kYD_zjk4X1QNrad3VoBTc":{"uri":"/melonJS/docs/melonjs/Particle.html#bottom"},"gXAx0c2nykZKyPYHDBUt7":{"uri":"/melonJS/docs/melonjs/Particle.html#centerX"},"qYwC3kNYTkYJ4PFq0oYTi":{"uri":"/melonJS/docs/melonjs/Particle.html#centerY"},"6ByEVWpEeQnQlOojwodM2":{"uri":"/melonJS/docs/melonjs/Particle.html#currentTransform"},"7Z97ujQ6jmjSCweK0U5l9":{"uri":"/melonJS/docs/melonjs/Particle.html#depth"},"3bwcnhnafkkMl-Z7xUPv1":{"uri":"/melonJS/docs/melonjs/Particle.html#floating"},"mNT92N6KqiYeyeLol6_TQ":{"uri":"/melonJS/docs/melonjs/Particle.html#GUID"},"WakFhUoZz251kkn0MQV-w":{"uri":"/melonJS/docs/melonjs/Particle.html#height"},"0H8oPpyDaXzyck2WprFGo":{"uri":"/melonJS/docs/melonjs/Particle.html#inViewport"},"eKOwJIapZ_Bpejc1RFuhd":{"uri":"/melonJS/docs/melonjs/Particle.html#isDirty"},"QQ9gX1OFt-UblXm2i6a6A":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedX"},"bmuO0Gv2GJQJjjBi-9NbL":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedY"},"x8FPQAmGVTbQ9-FTZEz3g":{"uri":"/melonJS/docs/melonjs/Particle.html#isFloating"},"_v77OZbn6cs0Io37R2lR6":{"uri":"/melonJS/docs/melonjs/Particle.html#isKinematic"},"4zsa7ZW1sj0C1TYFw9YMf":{"uri":"/melonJS/docs/melonjs/Particle.html#isPersistent"},"yVFQrfA2UPVJLVIGTElRF":{"uri":"/melonJS/docs/melonjs/Particle.html#left"},"TdnaNNveXt14I4jy4wXOy":{"uri":"/melonJS/docs/melonjs/Particle.html#mask"},"NgJ_n1TuUCr60WEMKyxNJ":{"uri":"/melonJS/docs/melonjs/Particle.html#name"},"ppNA7QpRqNPO-dye8IY-5":{"uri":"/melonJS/docs/melonjs/Particle.html#onVisibilityChange"},"k5WHcsmHszmM43SSRiJYF":{"uri":"/melonJS/docs/melonjs/Particle.html#points"},"_rIRzqv4byrJyFlyUOvkp":{"uri":"/melonJS/docs/melonjs/Particle.html#pos"},"WyelPE5O7hYUz5IOpMEfm":{"uri":"/melonJS/docs/melonjs/Particle.html#right"},"X_h7IE7Om2YWB0DfR7gq6":{"uri":"/melonJS/docs/melonjs/Particle.html#shader"},"Mq8qBvHvEeqG3kg4fsrbb":{"uri":"/melonJS/docs/melonjs/Particle.html#tint"},"7pH86fliB5BCFzuDye2mC":{"uri":"/melonJS/docs/melonjs/Particle.html#top"},"jsgoiPq_wropqG6SyVjpQ":{"uri":"/melonJS/docs/melonjs/Particle.html#type"},"nuPGTHIUd_jCRKU1owgrS":{"uri":"/melonJS/docs/melonjs/Particle.html#updateWhenPaused"},"nJqcwkE8kKmfcK_pNHrw-":{"uri":"/melonJS/docs/melonjs/Particle.html#width"},"fql0qGRTclA4YtfmpYQ35":{"uri":"/melonJS/docs/melonjs/Particle.html#angleTo"},"IfCxL_upSusEaSq6z4xLW":{"uri":"/melonJS/docs/melonjs/Particle.html#centerOn"},"k-XBKHXZALwWOTaFra-qY":{"uri":"/melonJS/docs/melonjs/Particle.html#clone"},"tCBTSdsTRm7DwLB_qg8I5":{"uri":"/melonJS/docs/melonjs/Particle.html#constructor"},"QH7rm5RWKAj879kOJc9Dj":{"uri":"/melonJS/docs/melonjs/Particle.html#contains"},"4hN7jbdoDLjBUCcod2sn0":{"uri":"/melonJS/docs/melonjs/Particle.html#copy"},"VCeKCvm6l9gii8fgFcZsC":{"uri":"/melonJS/docs/melonjs/Particle.html#distanceTo"},"B1SRoK4bNDaQkNekV-rTc":{"uri":"/melonJS/docs/melonjs/Particle.html#draw"},"G8s5yIjLULu5RsLwOWQnA":{"uri":"/melonJS/docs/melonjs/Particle.html#equals"},"xC8xlsLcGDtvhi0lcEqb2":{"uri":"/melonJS/docs/melonjs/Particle.html#flipX"},"fJZuftC1ebWaLdr5IkR64":{"uri":"/melonJS/docs/melonjs/Particle.html#flipY"},"us6BvVJyQsDIJbnl0TQdQ":{"uri":"/melonJS/docs/melonjs/Particle.html#getAbsolutePosition"},"gQ4A2BNEZ3ae7qyNfdxjW":{"uri":"/melonJS/docs/melonjs/Particle.html#getBounds"},"af5Ee-X1K3kMdh5OpU_VF":{"uri":"/melonJS/docs/melonjs/Particle.html#getIndices"},"K-q5Zu0AKJwB4yCVA-ilU":{"uri":"/melonJS/docs/melonjs/Particle.html#getOpacity"},"QT11e-MSMBRRBL8uwh-ye":{"uri":"/melonJS/docs/melonjs/Particle.html#isConvex"},"JKp6FsqYazpqPUKWpFC5o":{"uri":"/melonJS/docs/melonjs/Particle.html#isFinite"},"vr2NZOhKKilU2GvjDDJZn":{"uri":"/melonJS/docs/melonjs/Particle.html#lookAt"},"-Sucz9vQicUB_D6RLX403":{"uri":"/melonJS/docs/melonjs/Particle.html#onCollision"},"a9mepzksWuugZFT54NJBs":{"uri":"/melonJS/docs/melonjs/Particle.html#onDestroyEvent"},"RmWuFYEaTXf-4pRCL5LXN":{"uri":"/melonJS/docs/melonjs/Particle.html#overlaps"},"szvtzzPr2bBaFtdZAM8zB":{"uri":"/melonJS/docs/melonjs/Particle.html#postDraw"},"PUDjlYYHQeu8oYP-ISX6d":{"uri":"/melonJS/docs/melonjs/Particle.html#preDraw"},"ju-pWW4ImVNfRYBowsczv":{"uri":"/melonJS/docs/melonjs/Particle.html#recalc"},"qcLGVRjlRjhxqGYE67UHW":{"uri":"/melonJS/docs/melonjs/Particle.html#resize"},"Kh58wMlAePC5bzm28pYFV":{"uri":"/melonJS/docs/melonjs/Particle.html#rotate"},"5MbQdrErSeuMuok3S7zuy":{"uri":"/melonJS/docs/melonjs/Particle.html#scale"},"V_tVBqIsYxZrzeKZQpd4N":{"uri":"/melonJS/docs/melonjs/Particle.html#scaleV"},"RQPNflMkuj0wBhaTuhy-i":{"uri":"/melonJS/docs/melonjs/Particle.html#setOpacity"},"wpRby0vFteRtI4AZXwPrv":{"uri":"/melonJS/docs/melonjs/Particle.html#setShape"},"sNT6TPFDSVA18a66scJnY":{"uri":"/melonJS/docs/melonjs/Particle.html#setVertices"},"usWAegeXjN-QsPhO7ZHQ9":{"uri":"/melonJS/docs/melonjs/Particle.html#shift"},"CNnJDQEufbNjojGBJs1Sc":{"uri":"/melonJS/docs/melonjs/Particle.html#to2d"},"yTnWrqY9FzFvW1ncoVbRK":{"uri":"/melonJS/docs/melonjs/Particle.html#toIso"},"yi860Et5SnNeFLINh6A7W":{"uri":"/melonJS/docs/melonjs/Particle.html#toPolygon"},"tPLkI0L2tNB-Be8K8B9z4":{"uri":"/melonJS/docs/melonjs/Particle.html#transform"},"2wssgR2t_A93SPnEYCBJq":{"uri":"/melonJS/docs/melonjs/Particle.html#translate"},"XcqJKDrnyHKJAnnAJOhm_":{"uri":"/melonJS/docs/melonjs/Particle.html#union"},"hh6aI_BtOL3qWqXNrsvEp":{"uri":"/melonJS/docs/melonjs/Particle.html#update"},"YG2vkLSELJOEeEc4EQruC":{"uri":"/melonJS/docs/melonjs/Particle.html#updateBounds"},"u51-vxkbyWpWwGnAS5mOt":{"uri":"/melonJS/docs/melonjs/Particle.html#onAnchorUpdate"},"AhlNlOQ2LXNx1A3Q_hSms":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html"},"Px7qxEmoFj_Dql9ytMg4X":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alpha"},"9L9rAkH9hX5t8JDT_nboX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alwaysUpdate"},"n7-gFNHPcBm1Uv4u-Apn1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#ancestor"},"PGO47wE1ydVCDlgQieHn8":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#anchorPoint"},"g3hJ67bD3GfkKninww15x":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoDepth"},"n4GOuWePcUha-RkWBXr_g":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoSort"},"lK23b0sCjh7FsXBuoaJbA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoTransform"},"spshtLoIij9pIymZEo2jQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#backgroundColor"},"Z3whqFKpSdrXrd4lXa_cm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#blendMode"},"sAKa-YLZPQadZ39x5VK_t":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#body"},"O9oK6lv_TYYmMPaaj1v_P":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#bottom"},"ABAozaYu65XKI4jot3jBX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerX"},"VQZzQtKpOmeBSCQDgpekO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerY"},"hnWx1-GP_FzAN0FXZLf6Z":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clipping"},"SadMgzyyu44oaTCvwj0Jy":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#currentTransform"},"18Ud7SN4iHe3tZqIVdh-R":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#depth"},"meJ7Xi6rCDjHnmrlZj6or":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#enableChildBoundsUpdate"},"bLQWgrLDnKZ7CiHtvqOG-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#floating"},"0h0k13NQKftO7J4aLO_Tl":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#GUID"},"aPGRSF6M0iN6ogzclwkn3":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#height"},"-HUNi6U5IfwriD57jI1XG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#inViewport"},"iGI6tVLEaRtQ20GjHyig-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isDirty"},"A73RDC4q9jsSC4EJn8S1V":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedX"},"jmDHlQtcCyBzpq_m7M-pu":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedY"},"X7KcPohE5LT3XTO-Kaodn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFloating"},"Awux7Hp_QPWzLAiYaIzfs":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isKinematic"},"LtbCQ2p_sVkC88S2vP0n1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isPersistent"},"B-E9v_LP4F3qZIhkOvdTr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#left"},"dUPiYC0tvu-pBVikHQDUz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#mask"},"bZc9MH1o3iMdNqBnFVmp1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#name"},"JKbN8Se2mAl53i9DTdAAF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onVisibilityChange"},"-HT02GWZqZs4LhXNAU_tL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#points"},"HMDvuNpl8U_EWTU86FkjP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#pos"},"7s49TWNHAhDGZuAu4r7GH":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#right"},"rOW2Uq0TWOdCZbFiPnpFt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#root"},"Tx7ZkS1pHQJfRp32twaVM":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#settings"},"K8_XlsLCjY5mfnII_5YVn":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shader"},"l3Zye6WCt7CfliDU-q_Y0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sortOn"},"5H1QJ_WetVSqqQC4IAVPG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#tint"},"7T20ra9It50UJsq_N7ghj":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#top"},"r2lrHCV-hFELNuu5EGedF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#type"},"R39Vdb5HaR-18vNxg5ASJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateWhenPaused"},"xler2rzvIB4Ik9pcBsihr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#width"},"o8E8CAueyFnjQls5rY22t":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChild"},"AeIKBs2mJsoAjBVQXeK8d":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChildAt"},"qrIjVKepM4ElRE1yJhcH_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#angleTo"},"wC5nw9PzZLXHKxKQ7-hP3":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#burstParticles"},"QT1-26xZ1A_bqyyFPKWU7":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerOn"},"HaVApwd6Rjb7uoGg43taU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clone"},"NldhNmhcE0piMsCuroX5q":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#constructor"},"VLuiqzcNy1_yft9LuOhn2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#contains"},"oaXxwlMx-gnAvviKzpSRR":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#copy"},"CUMo-ITC9wKGA3KsZSBTv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#distanceTo"},"oTyPER77jZF6vZgS3SpMe":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#equals"},"FOjLcskxt8P-ghLdNgBXV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipX"},"Q50nHIP5AjLtMcl3Qctu3":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipY"},"BOElTEQZNitHKmgauiWPm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#forEach"},"d1233gVFz46ecXQYpaLjV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getAbsolutePosition"},"3LkMb3mrCLAXsZlIck0xg":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getBounds"},"r3tJRUTGGyn1wZ4EXXXIb":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildAt"},"Q5sez4x0ExZVixqdas41X":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByGUID"},"NmSa7lbp2tZ9GJR0o-jw8":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByName"},"LTiZBKBtjn_EbYKvxXXd-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByProp"},"zSqZC63MDtihDqhkO1GQA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByType"},"rrERFkKn9ti58FUoAH5Ad":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildIndex"},"8FKieuQU1xAgzng74o2Gu":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildren"},"bK8yM9Qh_y0g9EUMKzXls":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getIndices"},"prelCNayKNgbgbnDzd-_w":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getNextChild"},"NDZWNiH_nrlZzDIvpaAuA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getOpacity"},"9ENTOZ6QRka17oAYWHov1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointX"},"_dGQmAzQq-QtEDJ6UcB1_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointY"},"5Zvaf4j5PuiOnFEs6yqqw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRootAncestor"},"BdttMdNfjf9TaAkXP7DBU":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#hasChild"},"l8_sYhzxhAPrUnXaT6P0C":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isAttachedToRoot"},"DwUgkpY7Kija_bBfkBiM9":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isConvex"},"kUVvD_Iy5VcvxFYA2ku0Q":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFinite"},"ih5Q1PdpX-H46wESwlsYa":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isRunning"},"c9uSmkXhMj6aWhT_jiB6r":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#lookAt"},"cOXBZ6p10w9l2zHJ5QStL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveDown"},"iTdrz9MRMyuoj4CMMU6xP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToBottom"},"E47WWA9T2eMbaGajIROV1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToTop"},"Hfs6L1JIvteic0JGpz7af":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveUp"},"oqohuwfATEOEpxg__EaZ-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onChildChange"},"Uc-FsSQE3_KFuhITIu9Nl":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onCollision"},"Q6AoSfaaXgIUgOnlVYFTt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onDestroyEvent"},"1XP-9AB-9t1IwSyfmqhl_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#overlaps"},"qVzc5MWgi062PbWopkA1G":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#postDraw"},"uAik4nE12EM1mHHvBfr6_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#preDraw"},"vqAkI8TeC8oiZNwhxLXMt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#recalc"},"4zo86H8f3CVuM05QTRWnt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChild"},"oKFg0m3rlWRnysCGmzc5S":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChildNow"},"fwqPLzLkAt21E9iJnKAAD":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#reset"},"AFpJ_AufcyR8QWpFAwblN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#resize"},"5fhUICEmVDKGo3EiqIhr-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#rotate"},"tR2C3OiiW0fM8VoXBSls9":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scale"},"8hoS6lAyu5GU0zQKpXhUO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scaleV"},"Bnz1v-RkiqWxX-9QcK8Lk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setChildsProperty"},"X85P7R5skxDcyd-SKetMk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setOpacity"},"YccXDO7Mnm52knKfFgqEK":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setShape"},"q2clzR7z5aU0tqTXwvasz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setVertices"},"BdFImLHrRQ-uH4ky3ZCOc":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shift"},"QziATLnJlfG7fiOivaQXz":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sort"},"p2HLlb3ZL2aWTbhkGaYM_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#stopStream"},"e_UAAOC0FRfTsMlgZXziO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#streamParticles"},"bc-tLnNntuslJI9UpkIAQ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#swapChildren"},"Vhxwk6rDklTSZy1p_6Hg8":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#to2d"},"fAMQu5I3QU1i4WNR0m5LV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toIso"},"04BfbCyVHvH-dzXSKoe9y":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toPolygon"},"h2Zh2qvRzC5PKLRgsO1Tv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#transform"},"vT8Xx-H4mTanfanFrZqRL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#translate"},"cEnsgGzJ7Ut1rNL3Pm59A":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#union"},"pcceUjFRSbZiOE7Kg8aNS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateBounds"},"9L1QPhprF-eXtebK97o56":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#draw"},"gZqES0npl5Xvn3hk-3ahO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#update"},"Hucyd6B-VonXfHrER7uEP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onAnchorUpdate"},"h2CQ67E6KfUWGorXNjpda":{"uri":"/melonJS/docs/melonjs/Path2D.html"},"KPa1AgtsTxsYqdEk5eLro":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcResolution"},"aBJ3VZ1ZMRgIB24KL8-Jc":{"uri":"/melonJS/docs/melonjs/Path2D.html#points"},"w5yS58Zbb3CMqDHlGrbJ5":{"uri":"/melonJS/docs/melonjs/Path2D.html#arc"},"6Oiu8QW99XsXv6c6wKrqs":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcTo"},"tq4L17o63ekE2ugdhsbJF":{"uri":"/melonJS/docs/melonjs/Path2D.html#beginPath"},"R9UbDmtw3WiVT9di1J7j2":{"uri":"/melonJS/docs/melonjs/Path2D.html#closePath"},"C8W8xJqhmw9TsgKrZ8nnI":{"uri":"/melonJS/docs/melonjs/Path2D.html#ellipse"},"7vGoH5SX08NQ4RHYrUNqB":{"uri":"/melonJS/docs/melonjs/Path2D.html#lineTo"},"4PnTejy2Z9pdKd_OIz9wj":{"uri":"/melonJS/docs/melonjs/Path2D.html#moveTo"},"E0PEZmb4_XcE_byBwsVZP":{"uri":"/melonJS/docs/melonjs/Path2D.html#rect"},"FHVU3Sx-5Z8JMsjD7bo3p":{"uri":"/melonJS/docs/melonjs/Path2D.html#roundRect"},"jt4DhM2KSGKs-8TbQdAG1":{"uri":"/melonJS/docs/melonjs/Path2D.html#triangulatePath"},"yp3aS3BmH5Wf64PAwsE1G":{"uri":"/melonJS/docs/melonjs/Point.html"},"uHmOBgZy4Ir2zE7Kz4wmE":{"uri":"/melonJS/docs/melonjs/Point.html#type"},"QcXFrKCWKhN63XmjsFW7n":{"uri":"/melonJS/docs/melonjs/Point.html#x"},"7ZhN_rTUWMlUE5G5dYRd-":{"uri":"/melonJS/docs/melonjs/Point.html#y"},"PQydWjtEdH_iNKwpnb91O":{"uri":"/melonJS/docs/melonjs/Point.html#clone"},"nM8EcrAl7p00NHmTbFk1U":{"uri":"/melonJS/docs/melonjs/Point.html#equals"},"AtMtgxn5efzhT6JPjhnW9":{"uri":"/melonJS/docs/melonjs/Point.html#set"},"yi-CRoLXo4kAMzfzaLIPv":{"uri":"/melonJS/docs/melonjs/Pointer.html"},"vwBHKvR6zkTkQ1GoKDzLG":{"uri":"/melonJS/docs/melonjs/Pointer.html#bottom"},"UG5cDDHO7S-wLFBVsDqUs":{"uri":"/melonJS/docs/melonjs/Pointer.html#button"},"BfZHup3LkUbTTVxJoUCJD":{"uri":"/melonJS/docs/melonjs/Pointer.html#center"},"sRHk0vwlliwxxegRSNajA":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerX"},"ujlhDRX9RVTuH0FI2FF7A":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerY"},"wggtbk5zVMfndK6s0INj5":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientX"},"vsJ3kSY1GRB1eLZvJy5vk":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientY"},"f54KztdqWyZOnOSMF0xOF":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaMode"},"Q4f6pSSQeKtYzOzCMpWwy":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaX"},"3D2T4VPJeYhFmWuJxVsHC":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaY"},"IFQ-_SDLXWxn8pt5E2Ohs":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaZ"},"7q1bcXsQowcovul4Qhi8L":{"uri":"/melonJS/docs/melonjs/Pointer.html#event"},"PmO6t5PM3n4peqxRII_hE":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalX"},"1wDOkOQ9djLLXmlO9LjzH":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalY"},"N9UptN7oSYw8rr9nqxsGp":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenX"},"uRvFjMHbHfVmxWzRix3_j":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenY"},"mKYe4OvhIM4S4hwAAKFKC":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldX"},"lhb1YGDYjxwLsAJghV5Tx":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldY"},"WVGn0cwx43ikVQKV3rJbC":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameX"},"cqhMzfwb2nBrqlVozkLrg":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameY"},"_xR5xUbbB9uQbt9sSNUF-":{"uri":"/melonJS/docs/melonjs/Pointer.html#height"},"sFNeSea9Phd5OkmnRJJOG":{"uri":"/melonJS/docs/melonjs/Pointer.html#isNormalized"},"SM6YsLMN5kddnSLvk7vJK":{"uri":"/melonJS/docs/melonjs/Pointer.html#isPrimary"},"ye99nVQ0ZyIKw6s5BXYQn":{"uri":"/melonJS/docs/melonjs/Pointer.html#left"},"qv-56TQUVBjq0pxo-r_2-":{"uri":"/melonJS/docs/melonjs/Pointer.html#LEFT_"},"hrpKjxjPiEBcRH2rg8x6-":{"uri":"/melonJS/docs/melonjs/Pointer.html#locked"},"14k5bjU46wQQ3NXsRAHwN":{"uri":"/melonJS/docs/melonjs/Pointer.html#MIDDLE"},"wha9DvusF5O5sKQ6b4cRh":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementX"},"r-nPlbYBnpyF_3Cjnr4nJ":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementY"},"ZXsfDeEnggIrOKzVrPAXK":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageX"},"54w0ZivU-5MScRDlOCjJ2":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageY"},"Dgg-hyGHGLsbVh5ihsaZr":{"uri":"/melonJS/docs/melonjs/Pointer.html#pointerId"},"OHV4O7Pl-wairP7GB0T5q":{"uri":"/melonJS/docs/melonjs/Pointer.html#right"},"lrO92pot6LduE4Q0hndB5":{"uri":"/melonJS/docs/melonjs/Pointer.html#RIGHT_"},"hKg3uNlmQzDMqRBnLepsB":{"uri":"/melonJS/docs/melonjs/Pointer.html#top"},"R6uF0jOX8MFVLN5CRCUwc":{"uri":"/melonJS/docs/melonjs/Pointer.html#type"},"4C1bFxiS6Cbc-lpzTqf3L":{"uri":"/melonJS/docs/melonjs/Pointer.html#width"},"LK8m-dvxrodYiHO_gKPFN":{"uri":"/melonJS/docs/melonjs/Pointer.html#x"},"Mx72tw8HQg5z80V6tTpBt":{"uri":"/melonJS/docs/melonjs/Pointer.html#y"},"47FXOIuaxkQhFEVcRno_Y":{"uri":"/melonJS/docs/melonjs/Pointer.html#add"},"Qc61JddeVbZ2W5SUQVTh0":{"uri":"/melonJS/docs/melonjs/Pointer.html#addBounds"},"5X_FgB616p82NeU6_v_iR":{"uri":"/melonJS/docs/melonjs/Pointer.html#addFrame"},"we9EWqu6R90PdA2X3J2sY":{"uri":"/melonJS/docs/melonjs/Pointer.html#addPoint"},"h8zx3cehmnAQveBcYOujX":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerOn"},"P8zVeGusI5e9y2ALHDS5F":{"uri":"/melonJS/docs/melonjs/Pointer.html#clear"},"H5LMF6kLXvQfQctFXDWHf":{"uri":"/melonJS/docs/melonjs/Pointer.html#clone"},"7znBbryNdzG57CDlBf7IF":{"uri":"/melonJS/docs/melonjs/Pointer.html#contains"},"n4_0lJDezdmcX8DEV3elo":{"uri":"/melonJS/docs/melonjs/Pointer.html#isFinite"},"TeVX99tyhpG4arvs1DskW":{"uri":"/melonJS/docs/melonjs/Pointer.html#overlaps"},"_MsIcL1j8EGysWLcuy_v3":{"uri":"/melonJS/docs/melonjs/Pointer.html#setMinMax"},"6C7DCMXSsXZmgcrVgl-Uh":{"uri":"/melonJS/docs/melonjs/Pointer.html#shift"},"nGUrqIgqnLpEpX5Hs_XvQ":{"uri":"/melonJS/docs/melonjs/Pointer.html#toPolygon"},"GUvaSq5yANsIvwkxDe9zI":{"uri":"/melonJS/docs/melonjs/Pointer.html#translate"},"jWIQ6EjHRATr1_JrUncm5":{"uri":"/melonJS/docs/melonjs/Pointer.html#update"},"dpgIg4A5xXPrMibkJ3quI":{"uri":"/melonJS/docs/melonjs/Pointer.html#set"},"fHFsQtKCYkaCwFirqPu-M":{"uri":"/melonJS/docs/melonjs/Polygon.html"},"w728sFhEyxXsOAtCcq5ek":{"uri":"/melonJS/docs/melonjs/Polygon.html#points"},"fZxBagjHVK5A_DwYSsVYI":{"uri":"/melonJS/docs/melonjs/Polygon.html#pos"},"FnqWQCYXXi1yM7dKURy1L":{"uri":"/melonJS/docs/melonjs/Polygon.html#type"},"YMuUCrFQwRjfjcwIRnbhy":{"uri":"/melonJS/docs/melonjs/Polygon.html#clone"},"olhs9jmtLuwahIEPAtDQO":{"uri":"/melonJS/docs/melonjs/Polygon.html#constructor"},"wW_WC6m0ekRbx3imGdOXU":{"uri":"/melonJS/docs/melonjs/Polygon.html#contains"},"AXSUbXyZ-wlgnXec8WDVH":{"uri":"/melonJS/docs/melonjs/Polygon.html#getBounds"},"goD2W3c_g-8JmYEinmQqq":{"uri":"/melonJS/docs/melonjs/Polygon.html#getIndices"},"6RMvj1_EhnUAglvx6UtxZ":{"uri":"/melonJS/docs/melonjs/Polygon.html#isConvex"},"3DY-CjcM-NXT5watO9Jbb":{"uri":"/melonJS/docs/melonjs/Polygon.html#recalc"},"A0SBkbex_XAJHhcP7RxvR":{"uri":"/melonJS/docs/melonjs/Polygon.html#rotate"},"JxHcEOuOJPINruOifo2YJ":{"uri":"/melonJS/docs/melonjs/Polygon.html#scale"},"xnCBnuXfg_oD9nB3rucL8":{"uri":"/melonJS/docs/melonjs/Polygon.html#scaleV"},"SEWlB34RhAK-1KZf442GM":{"uri":"/melonJS/docs/melonjs/Polygon.html#setShape"},"1J4JPXawlnmH7llakVo95":{"uri":"/melonJS/docs/melonjs/Polygon.html#setVertices"},"QdgPfe_3oYVOS-MkYrG5m":{"uri":"/melonJS/docs/melonjs/Polygon.html#shift"},"tP_Gy4OLlgMCEPRfiZYL5":{"uri":"/melonJS/docs/melonjs/Polygon.html#to2d"},"cBhUsdEKjsjfIXiLZD7Px":{"uri":"/melonJS/docs/melonjs/Polygon.html#toIso"},"8CsRDdYQp4__lvQR98NNM":{"uri":"/melonJS/docs/melonjs/Polygon.html#transform"},"q5ZtGArOpQaHdnjkxpa_d":{"uri":"/melonJS/docs/melonjs/Polygon.html#translate"},"VVI85ZLN71gXChtB7Q_uS":{"uri":"/melonJS/docs/melonjs/Polygon.html#updateBounds"},"kKInhAKoFWJ4nEmMhyZxX":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html"},"ssmVS_sUv_CKq4EGFKq5f":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#attributes"},"7SkWv9tKU4l7dagyEu9Jh":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#currentShader"},"WX0ThGJ_c4QEWq10b5w9O":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#defaultShader"},"iJyFaHXqB_Tn_OZ8YtN_y":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#mode"},"3R7P1ox8BqDTEh7eGK8Qv":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexByteSize"},"Bu2NBS90Zkr5_Z5Xf_Yme":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexData"},"S1QMQ7b451pVduEYGNHA0":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexSize"},"_SsNbdBu6w8JTBSKISjCT":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#addAttribute"},"520ZoQ4MeaZTKiVJSA8JU":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#bind"},"5WeU-1uoRf6820cL-rwCz":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#constructor"},"WJQCCVppOCv0jMpDKm54n":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#drawVertices"},"rythRqwKt4jl-sFm3MEH8":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#flush"},"2JfJ4BHumKJuU-8P0VN3N":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#setProjection"},"n5AZO_CCO096yU773AQ-F":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#useShader"},"7OXNCwRK0-ctqudL40TIv":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html"},"l__kMa9FexqGXB4-fQSOy":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#attributes"},"YsSNqgWMFqF8vGiknnVHx":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#currentShader"},"1fANJZIhu6_ulOPucK4oK":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#defaultShader"},"VIVJMv_io7xrWSDD_1yyU":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#mode"},"aFf4His6ng62RJlDHrwpg":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexByteSize"},"-IWOc-cKv3GLfzlHH_Is3":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexData"},"0mgNX5cDHZOvdWw-dfmQq":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexSize"},"68u53Xk0VSPXcMzoi6Nb7":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addAttribute"},"UBaOhNJlir0VATnY-cw4f":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addQuad"},"Z8WqqrBkmRhDGh3qS-Bnu":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bind"},"f7hCdofuRgriImTqcjF7j":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bindTexture2D"},"K9y79HCWoZTvg7famRqws":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#constructor"},"cjhD9ihtiHMnci5-KCvxm":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#createTexture2D"},"x0Mbfspl8glavzbP_QxoJ":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#deleteTexture2D"},"A7m-8X6t4Am-nsUOamlvt":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#flush"},"DPh39225YVhG81_zfPmgg":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#getTexture2D"},"exbGS7mBgdo63iOAt0gsP":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#setProjection"},"d2X-pItKyL3JCz34d6OXV":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#unbindTexture2D"},"h2SLlPLiyE62N7QtVBerZ":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#useShader"},"M32awac2EQJ-RNVU4mARX":{"uri":"/melonJS/docs/melonjs/QuadTree.html"},"1cFDFNyXgqnty_-B9acoe":{"uri":"/melonJS/docs/melonjs/QuadTree.html#clear"},"hrVBd7et4c3ydsaog07es":{"uri":"/melonJS/docs/melonjs/QuadTree.html#constructor"},"BO_Mo_wrfXZZDkUKh0Ojh":{"uri":"/melonJS/docs/melonjs/QuadTree.html#hasChildren"},"XW_ZaPOvPM6CmGsLlglID":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insert"},"VnMkPm5ahksYfFuG5IaM3":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insertContainer"},"wd0Pu-J8HtuVYJVnhnDMx":{"uri":"/melonJS/docs/melonjs/QuadTree.html#isPrunable"},"d8pYkh_DeWoHrVKHhk4Hm":{"uri":"/melonJS/docs/melonjs/QuadTree.html#remove"},"TcYoflZxhciYMWEz8knzV":{"uri":"/melonJS/docs/melonjs/QuadTree.html#retrieve"},"FHMnvSdbrEotTrzpIAKC8":{"uri":"/melonJS/docs/melonjs/Rect.html"},"s_jWRWW87bKAU9gYs1K3d":{"uri":"/melonJS/docs/melonjs/Rect.html#bottom"},"5tB4IC0RpXDjfjzxUAiMl":{"uri":"/melonJS/docs/melonjs/Rect.html#centerX"},"LG85FSbzlu_j7rE3ks3mA":{"uri":"/melonJS/docs/melonjs/Rect.html#centerY"},"z2pNtTCw1sUdy7alpHkrl":{"uri":"/melonJS/docs/melonjs/Rect.html#height"},"Kxn_LmERSt-fFQz6AAOm6":{"uri":"/melonJS/docs/melonjs/Rect.html#left"},"b1bjKsPUDf2P38bQmW9Ku":{"uri":"/melonJS/docs/melonjs/Rect.html#points"},"an7rYXXWN2G8Ea8r9OkSt":{"uri":"/melonJS/docs/melonjs/Rect.html#pos"},"NIoP-voibeI7qDb4cuUM5":{"uri":"/melonJS/docs/melonjs/Rect.html#right"},"1wdQwtQkt_X7vVeUVJJDg":{"uri":"/melonJS/docs/melonjs/Rect.html#top"},"5FkT1k4y5TS28a8Czx-mb":{"uri":"/melonJS/docs/melonjs/Rect.html#type"},"vzkPoJEtGKPTCkFo8_NfA":{"uri":"/melonJS/docs/melonjs/Rect.html#width"},"JGE2lv3ey1nJ-kTmZz3Sm":{"uri":"/melonJS/docs/melonjs/Rect.html#centerOn"},"G3EMpJBAlBVh7aAzfE7KG":{"uri":"/melonJS/docs/melonjs/Rect.html#clone"},"7a9lvs8jC-KOPc0Iv4Nhi":{"uri":"/melonJS/docs/melonjs/Rect.html#constructor"},"bXceoEJTcG74SK_NLkObx":{"uri":"/melonJS/docs/melonjs/Rect.html#contains"},"myYBDQeAANMmdyiWYjjni":{"uri":"/melonJS/docs/melonjs/Rect.html#copy"},"8nt0ERAEjw2Fh2jWQ8En4":{"uri":"/melonJS/docs/melonjs/Rect.html#equals"},"uIX2LQINabm1zJHAMjMyZ":{"uri":"/melonJS/docs/melonjs/Rect.html#getBounds"},"iFyeEWx8c9D7QW_k9-d8L":{"uri":"/melonJS/docs/melonjs/Rect.html#getIndices"},"I99DsZMNp-uf-XgOyNI5P":{"uri":"/melonJS/docs/melonjs/Rect.html#isConvex"},"OtQI0JIv7cRMtva2eBe4K":{"uri":"/melonJS/docs/melonjs/Rect.html#isFinite"},"y2jARc3RsfLZlP7CNyrIf":{"uri":"/melonJS/docs/melonjs/Rect.html#overlaps"},"Vz-CwxeuAa4Ewjb7fCIgK":{"uri":"/melonJS/docs/melonjs/Rect.html#recalc"},"_zkPo1MyBUS9AL5TyOUpb":{"uri":"/melonJS/docs/melonjs/Rect.html#resize"},"oH_2I8fSi3PhUEOPUQiVO":{"uri":"/melonJS/docs/melonjs/Rect.html#rotate"},"anGSHPR7idQd2hCYhySqH":{"uri":"/melonJS/docs/melonjs/Rect.html#scale"},"RWVbjw5VW71dnVAMVMT7G":{"uri":"/melonJS/docs/melonjs/Rect.html#scaleV"},"6r-7mMawFHQiJgPL6NxPR":{"uri":"/melonJS/docs/melonjs/Rect.html#setShape"},"Am-Ccfid8eg5RFUD4MGBP":{"uri":"/melonJS/docs/melonjs/Rect.html#setVertices"},"45tuFz8WZ8-xAkH0k8hQd":{"uri":"/melonJS/docs/melonjs/Rect.html#shift"},"7dnjI2-A6n07WyrmVuxe8":{"uri":"/melonJS/docs/melonjs/Rect.html#to2d"},"1BzUmWdu2Xtt_efIwjqzn":{"uri":"/melonJS/docs/melonjs/Rect.html#toIso"},"25l1bsGwRg3-CzXy5S_Tj":{"uri":"/melonJS/docs/melonjs/Rect.html#toPolygon"},"g3D8eXLQdBEa-fnkLt7dr":{"uri":"/melonJS/docs/melonjs/Rect.html#transform"},"IdbfufhDybnHBUFPIMNSd":{"uri":"/melonJS/docs/melonjs/Rect.html#translate"},"9fn0w_JnvtrpiZe7t82md":{"uri":"/melonJS/docs/melonjs/Rect.html#union"},"wsMQG_DB6eRGpEO-TBcrO":{"uri":"/melonJS/docs/melonjs/Rect.html#updateBounds"},"yzORe89tZsBJmNYXgLVZo":{"uri":"/melonJS/docs/melonjs/Renderable.html"},"w5YRa84SFNBzqIkLq5orN":{"uri":"/melonJS/docs/melonjs/Renderable.html#alpha"},"w42I0PZ_JjxncBDiMREW9":{"uri":"/melonJS/docs/melonjs/Renderable.html#alwaysUpdate"},"yujlkWfyINvroXQ_XLqM7":{"uri":"/melonJS/docs/melonjs/Renderable.html#ancestor"},"kqlDhVvdwEPC_Ejlh6PpD":{"uri":"/melonJS/docs/melonjs/Renderable.html#anchorPoint"},"Ltwiy9Fz7fCkejpjOf_OH":{"uri":"/melonJS/docs/melonjs/Renderable.html#autoTransform"},"SqAsCttyybE6noAcoS-o9":{"uri":"/melonJS/docs/melonjs/Renderable.html#blendMode"},"IyGE880z9i6Y0o9RraCxW":{"uri":"/melonJS/docs/melonjs/Renderable.html#body"},"0T-w6EZNOzQf_CcAgP4vw":{"uri":"/melonJS/docs/melonjs/Renderable.html#bottom"},"xubLqyVU97wcGgwPrRQBk":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerX"},"yxcN_D2k7GRhfjdEQ28mn":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerY"},"ehm9OMh4NQodqnzE5xZ3D":{"uri":"/melonJS/docs/melonjs/Renderable.html#currentTransform"},"2E8xqRxktfiygAp_ICLkv":{"uri":"/melonJS/docs/melonjs/Renderable.html#depth"},"zW7w9o6VkWs1uXdW6zEZt":{"uri":"/melonJS/docs/melonjs/Renderable.html#floating"},"3PqTZ-Nd4a5Dxl8vf_l27":{"uri":"/melonJS/docs/melonjs/Renderable.html#GUID"},"gyMOBa7LMuSzf-TBzCqf8":{"uri":"/melonJS/docs/melonjs/Renderable.html#height"},"VRqw4tlPae4dYtisKAGam":{"uri":"/melonJS/docs/melonjs/Renderable.html#inViewport"},"7ChKasdYOGDZTPUd2a5rW":{"uri":"/melonJS/docs/melonjs/Renderable.html#isDirty"},"nwRx2MYcp2asKS-RlgQAV":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedX"},"kBbDWhIwdfEFB1U2LUJ78":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedY"},"kv2mIRpPdyLQyxs-LuI8Z":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFloating"},"GrtTrp_jsSKUeyO1M2B0S":{"uri":"/melonJS/docs/melonjs/Renderable.html#isKinematic"},"etsxDgOII50koxxhGDxvy":{"uri":"/melonJS/docs/melonjs/Renderable.html#isPersistent"},"FA-DHN1aadLDGRxBe-mx3":{"uri":"/melonJS/docs/melonjs/Renderable.html#left"},"d7Ut1KEFHfAjEcY964b45":{"uri":"/melonJS/docs/melonjs/Renderable.html#mask"},"P_0SLQjqAk1iWlCB438lO":{"uri":"/melonJS/docs/melonjs/Renderable.html#name"},"Ixb6ziJBL4NjUbIC1YHHZ":{"uri":"/melonJS/docs/melonjs/Renderable.html#onVisibilityChange"},"4e6gVkY1U5S_zK1w1Imdl":{"uri":"/melonJS/docs/melonjs/Renderable.html#points"},"76zl4cMzda_QgT2fHcQ5H":{"uri":"/melonJS/docs/melonjs/Renderable.html#pos"},"wik9i7BEKLbGODcZbHt4W":{"uri":"/melonJS/docs/melonjs/Renderable.html#right"},"MSS3QDZ4ejquOT_jqBE0V":{"uri":"/melonJS/docs/melonjs/Renderable.html#shader"},"jKyBEt1ceSIjgGjJ-991A":{"uri":"/melonJS/docs/melonjs/Renderable.html#tint"},"9G6BPZMliBJ0LawIF4uk8":{"uri":"/melonJS/docs/melonjs/Renderable.html#top"},"3FUgtZIb-aSpUpJwWIQYC":{"uri":"/melonJS/docs/melonjs/Renderable.html#type"},"rS4aWqv-5YLBaX_lnSQ2S":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateWhenPaused"},"wbP1N3VGyw5RBD9I35EwE":{"uri":"/melonJS/docs/melonjs/Renderable.html#width"},"1Oppx0S7APo59Xh4MKhnF":{"uri":"/melonJS/docs/melonjs/Renderable.html#angleTo"},"9Rw_hDdcGv_siWUHsgQNr":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerOn"},"o9dfovvut8TxsUTkt4g9k":{"uri":"/melonJS/docs/melonjs/Renderable.html#clone"},"ofuKXTtkJ9LgP8AYv-ZY8":{"uri":"/melonJS/docs/melonjs/Renderable.html#constructor"},"YTfI8CZiGEPL62QsL3ySz":{"uri":"/melonJS/docs/melonjs/Renderable.html#contains"},"hUfCNFPZA44Vu0qNJUiRv":{"uri":"/melonJS/docs/melonjs/Renderable.html#copy"},"eppJHmOai1n2eF-pq-q06":{"uri":"/melonJS/docs/melonjs/Renderable.html#distanceTo"},"nGlP4ItImZYg78bLQFCdq":{"uri":"/melonJS/docs/melonjs/Renderable.html#draw"},"uHPWLJbFC7q8gC2bI6UWf":{"uri":"/melonJS/docs/melonjs/Renderable.html#equals"},"6laDg6FPAnzX8o2NuQxHo":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipX"},"tILrV1RGi6SMBdK0XZ8Mr":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipY"},"k5kzBLH-LdIzpHzMXoCvm":{"uri":"/melonJS/docs/melonjs/Renderable.html#getAbsolutePosition"},"-da3dQCIJJ6wp70l8h7jE":{"uri":"/melonJS/docs/melonjs/Renderable.html#getBounds"},"UvgEhgc7wk_XoyrCnqOP4":{"uri":"/melonJS/docs/melonjs/Renderable.html#getIndices"},"o0oxxT7RG0dmsTwvGcTXo":{"uri":"/melonJS/docs/melonjs/Renderable.html#getOpacity"},"mw-zq7207EzgFNbYpyPD5":{"uri":"/melonJS/docs/melonjs/Renderable.html#isConvex"},"3WHauXtuTizPYE1qgvGIe":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFinite"},"tnZlTODnOQnipxSKLJJ3u":{"uri":"/melonJS/docs/melonjs/Renderable.html#lookAt"},"WrYXttG2uUOfArJ-B9fCY":{"uri":"/melonJS/docs/melonjs/Renderable.html#onCollision"},"91zV948tfyMviVaOc3dyi":{"uri":"/melonJS/docs/melonjs/Renderable.html#onDestroyEvent"},"eTZw8yWOVt1J3sQjpuCuZ":{"uri":"/melonJS/docs/melonjs/Renderable.html#overlaps"},"INZYDKOx-vC8Kek7pb5Os":{"uri":"/melonJS/docs/melonjs/Renderable.html#postDraw"},"QB272-tvYTJXBLEzt-n6W":{"uri":"/melonJS/docs/melonjs/Renderable.html#preDraw"},"1cC3hz_SYewmUAIClldEW":{"uri":"/melonJS/docs/melonjs/Renderable.html#recalc"},"PDhw8El1hTaMckRQNLdAJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#resize"},"4rQrGxu0425I5ornaH0U7":{"uri":"/melonJS/docs/melonjs/Renderable.html#rotate"},"RUeVK4s0cAAt-HQrhM9y2":{"uri":"/melonJS/docs/melonjs/Renderable.html#scale"},"XhZXiGWZ8KPNnQEzT5Efl":{"uri":"/melonJS/docs/melonjs/Renderable.html#scaleV"},"6HUw7EVvYwi303cnG1fwq":{"uri":"/melonJS/docs/melonjs/Renderable.html#setOpacity"},"MiaxN4hDJ3m3JheOL-skQ":{"uri":"/melonJS/docs/melonjs/Renderable.html#setShape"},"GgYBnW3VhK23apOpB3X1R":{"uri":"/melonJS/docs/melonjs/Renderable.html#setVertices"},"FA6d5CGH5m6MnvTWajlwD":{"uri":"/melonJS/docs/melonjs/Renderable.html#shift"},"At-r1BlNfFvFkxlJboOIM":{"uri":"/melonJS/docs/melonjs/Renderable.html#to2d"},"KlecusasBhmX3Z2uhCP-N":{"uri":"/melonJS/docs/melonjs/Renderable.html#toIso"},"TQ5BKpC-BzvlaxK7gvhkd":{"uri":"/melonJS/docs/melonjs/Renderable.html#toPolygon"},"gl6osoAbclCHn2LQaAXRN":{"uri":"/melonJS/docs/melonjs/Renderable.html#transform"},"tP2q5cJD630dU9nijEND4":{"uri":"/melonJS/docs/melonjs/Renderable.html#translate"},"V1axwN1neS1j7qoNDwyAk":{"uri":"/melonJS/docs/melonjs/Renderable.html#union"},"oxGc0bSi1i02-Hg9cWJXJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#update"},"LnPHUTPAyFCc6F7UC2tQK":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateBounds"},"KB4TNl2DrevOohPgePZ0C":{"uri":"/melonJS/docs/melonjs/Renderable.html#onAnchorUpdate"},"if9CPhiSwmhh3-DJbS6H7":{"uri":"/melonJS/docs/melonjs/Renderer.html"},"jjo-hLccNDg4MJ1JrquWh":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html"},"TM0NHhmMro7Q7CqJLq7Ey":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html#constructor"},"2qM2TIiHJ4g1JMTXq8R20":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html"},"kcWthWQKH6HhTV3it43Ei":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html#constructor"},"8oGvPqHeR2chOQBKZpzUV":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html"},"Tdb7cpB8C4JxFo9754n9U":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html#constructor"},"SV5cwTpYpTGLqyZHAy4fy":{"uri":"/melonJS/docs/melonjs/Renderer.html#depthTest"},"qC9ALdKcwbm6PGQd138rM":{"uri":"/melonJS/docs/melonjs/Renderer.html#designRatio"},"iMz2pVIerGh3x76JQsAIZ":{"uri":"/melonJS/docs/melonjs/Renderer.html#height"},"q3VYpdOvMbOnklnKnIr9p":{"uri":"/melonJS/docs/melonjs/Renderer.html#isContextValid"},"Nbvq5xqTUGHyiAPVGr8HP":{"uri":"/melonJS/docs/melonjs/Renderer.html#path2D"},"rOuMWgYaoR9uGrBekcUgV":{"uri":"/melonJS/docs/melonjs/Renderer.html#scaleRatio"},"1dD0GyZpI6kkCikkI0Nxq":{"uri":"/melonJS/docs/melonjs/Renderer.html#settings"},"TOR253mYE-OyM7hFGst1c":{"uri":"/melonJS/docs/melonjs/Renderer.html#type"},"s5O9sVfVKUNernYJEWvvN":{"uri":"/melonJS/docs/melonjs/Renderer.html#width"},"a5cye5xdu9IzGAa2Rtv-b":{"uri":"/melonJS/docs/melonjs/Renderer.html#clear"},"ycYWHgGNUTSNUvjmgioMZ":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearMask"},"8LY13XSweYnxgxYt1gAZY":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearTint"},"OSRPjlcdazcDZcqRaPdpV":{"uri":"/melonJS/docs/melonjs/Renderer.html#constructor"},"HSaQ4hCM5ty9HcJFhzdyq":{"uri":"/melonJS/docs/melonjs/Renderer.html#fill"},"gpddZIMPM1qzEo59_3JsP":{"uri":"/melonJS/docs/melonjs/Renderer.html#flush"},"_yhKOPrv7wCzczhTRDwxM":{"uri":"/melonJS/docs/melonjs/Renderer.html#getBlendMode"},"l4PzJVoxyHS_VADKoYFUT":{"uri":"/melonJS/docs/melonjs/Renderer.html#getCanvas"},"E9IhlkQKIj0bw67BvV7y1":{"uri":"/melonJS/docs/melonjs/Renderer.html#getColor"},"EgrfIFtR9-FHqfWSBOQzC":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext"},"8rQyYfRHfpy3U_-AzF6Zx":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext2d"},"_Yz83bnnpKoRFakqJ14d6":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenCanvas"},"zEJOyrKEqXRTZzosMOssz":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenContext"},"vL2abHjcdsmELGqsfPcGW":{"uri":"/melonJS/docs/melonjs/Renderer.html#globalAlpha"},"1l2ZGit-GN2orvDgetDkw":{"uri":"/melonJS/docs/melonjs/Renderer.html#overlaps"},"8GxZL3nbFuKhUj8jV0QM8":{"uri":"/melonJS/docs/melonjs/Renderer.html#reset"},"97kfLccrXnAjBxXnup8z5":{"uri":"/melonJS/docs/melonjs/Renderer.html#resize"},"9nCh52HBcWw5CqeCYs1TU":{"uri":"/melonJS/docs/melonjs/Renderer.html#setAntiAlias"},"m_ITIyVGGHUbSHhdxCTkN":{"uri":"/melonJS/docs/melonjs/Renderer.html#setMask"},"q7SND0kPbcHlx6TyuSx5v":{"uri":"/melonJS/docs/melonjs/Renderer.html#setProjection"},"oKTy5HH-RKMlb_G3QT-1-":{"uri":"/melonJS/docs/melonjs/Renderer.html#setTint"},"NJsjM2vDG3GvI0Amou-cj":{"uri":"/melonJS/docs/melonjs/Renderer.html#stroke"},"uDJiRLxflSTCuoqf7Yu7S":{"uri":"/melonJS/docs/melonjs/Renderer.html#tint"},"zFJfQaCZPW7pD8EEXgjCC":{"uri":"/melonJS/docs/melonjs/Renderer.html#toBlob"},"9cgoVIQfiqivhY-yDuuKC":{"uri":"/melonJS/docs/melonjs/Renderer.html#toDataURL"},"WR-dU_OD-DUoZRjFvbofb":{"uri":"/melonJS/docs/melonjs/Renderer.html#toImageBitmap"},"MhIDecHGhxt6Y-tIHK3l9":{"uri":"/melonJS/docs/melonjs/ResponseObject.html"},"TcLUVqVGlfHo0uFfiyIFi":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#a"},"lcdtpQAYz6qk2pEGQBgYj":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#aInB"},"qYMZtQd1ai4ETsKE8m_Me":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#b"},"xEZiY6Wf5moGEIlft1WWq":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#bInA"},"nVh3NBwpsEqtii6yWv9iB":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeA"},"kEik6Kw9jKqW1i4dgdm7X":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeB"},"Jd3MYM4E5IKDuvC0xau5J":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlap"},"EOoSXfz4Z6aRpgab2Mmdr":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapN"},"FGOeHSyrvMezd1iJOvw6k":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapV"},"32Y3MM90nmv5sjPfEL7eE":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#clear"},"QlgIZ3zQJdk4pPWd9MPEO":{"uri":"/melonJS/docs/melonjs/RoundRect.html"},"F4I8gQXKTaJ6EqswJo8Ht":{"uri":"/melonJS/docs/melonjs/RoundRect.html#bottom"},"w4WzyvNFtJcdiMMU-p44t":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerX"},"stTMywUV0FVmbMa8Digmi":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerY"},"-XCxSbPu202IfzXfxP8Aw":{"uri":"/melonJS/docs/melonjs/RoundRect.html#height"},"9pNz9n_7Um37bNzNFK3lW":{"uri":"/melonJS/docs/melonjs/RoundRect.html#left"},"qJpD_IZzc3irnpLMuyh-D":{"uri":"/melonJS/docs/melonjs/RoundRect.html#points"},"t-ZPnXwowA4PPynh4vcu6":{"uri":"/melonJS/docs/melonjs/RoundRect.html#pos"},"9XM3JxRiDp4ljUZ3pk9-g":{"uri":"/melonJS/docs/melonjs/RoundRect.html#radius"},"CeIsd5jeSk7tLIG3943vG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#right"},"TFQOIyancdnx6cNWPutk-":{"uri":"/melonJS/docs/melonjs/RoundRect.html#top"},"mU954I76wYRkq7zhJydAG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#type"},"zcAGoEKZFH0lTJChwB8PL":{"uri":"/melonJS/docs/melonjs/RoundRect.html#width"},"wqmV1kCpzuOlASxT6hA2J":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerOn"},"0KwZxINeviaOFe6b-Jtnk":{"uri":"/melonJS/docs/melonjs/RoundRect.html#clone"},"X4r5iuQyL40gBJKaMOsOd":{"uri":"/melonJS/docs/melonjs/RoundRect.html#constructor"},"6g5eo9nsp9MBfp9g91TIp":{"uri":"/melonJS/docs/melonjs/RoundRect.html#contains"},"S0AmpuUTwKpJtLcFpZsqP":{"uri":"/melonJS/docs/melonjs/RoundRect.html#copy"},"vPUZLZSJRG19FQEDIGYJv":{"uri":"/melonJS/docs/melonjs/RoundRect.html#equals"},"iurzi654eTr6d72o9YrUb":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getBounds"},"CnR3J7_BGTUJJk35rmJ2s":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getIndices"},"ZShUbQ0s3cX6bIJBxShyA":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isConvex"},"fCe1jNDlbBMQGyWEPkZpT":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isFinite"},"abxXuYEbHJc4DjCm0pJZQ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#overlaps"},"MmE1qURzQ5jf_NWtFbicq":{"uri":"/melonJS/docs/melonjs/RoundRect.html#recalc"},"2oadc3DyWOJur7Dvhkk1N":{"uri":"/melonJS/docs/melonjs/RoundRect.html#resize"},"TqoHCgiqzKeH1inx5AW41":{"uri":"/melonJS/docs/melonjs/RoundRect.html#rotate"},"wL35iQQqV2_q6hWWhHVYY":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scale"},"lP4dzlcCE6Hi-QEpmJCl0":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scaleV"},"ZskrUkFgh5PrUzwkSHlvz":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setShape"},"sDUTt6RRZ8fcntYJ62NMy":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setVertices"},"T_thTiMlo2gxvvnhrB-kR":{"uri":"/melonJS/docs/melonjs/RoundRect.html#shift"},"x8jm3MQKK-QTReMhGH_an":{"uri":"/melonJS/docs/melonjs/RoundRect.html#to2d"},"3PbJQtRlCJDX-xlv7oqOm":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toIso"},"MftbiGoSy3osb4JNhpRGE":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toPolygon"},"Fwclstny1r1Wgt34-Ehps":{"uri":"/melonJS/docs/melonjs/RoundRect.html#transform"},"9FuJK8xxR1pV5L33RYMgQ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#translate"},"NsAy82bK7EzgCXf1U93L7":{"uri":"/melonJS/docs/melonjs/RoundRect.html#union"},"2UVdM4jMbXayqmY_5JITd":{"uri":"/melonJS/docs/melonjs/RoundRect.html#updateBounds"},"H6Jx73dI1YDN51DPFsMwa":{"uri":"/melonJS/docs/melonjs/Sprite.html"},"PwAUZv-xcNWBocUIcQsgk":{"uri":"/melonJS/docs/melonjs/Sprite.html#alpha"},"joJh-QYJssFWAN2RYXINS":{"uri":"/melonJS/docs/melonjs/Sprite.html#alwaysUpdate"},"yt40YQUwCqE7eVoA7ps5-":{"uri":"/melonJS/docs/melonjs/Sprite.html#ancestor"},"zQCbuO__xkGO6AplT8NwV":{"uri":"/melonJS/docs/melonjs/Sprite.html#anchorPoint"},"E6yE3fVkLZCMm-8wQZ8Mr":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationpause"},"Y0kspfUnDZksFriyT6cWq":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationspeed"},"fZ5VdAHBqHnIKviFRiNBJ":{"uri":"/melonJS/docs/melonjs/Sprite.html#autoTransform"},"moXsPUsBc5nQyV8C7vNy8":{"uri":"/melonJS/docs/melonjs/Sprite.html#blendMode"},"qMi-pivp0P7XX4KQsGKgM":{"uri":"/melonJS/docs/melonjs/Sprite.html#body"},"aaHAZ5cQ90ucmWobzdB2H":{"uri":"/melonJS/docs/melonjs/Sprite.html#bottom"},"DFGHV37xRgzN--EziQAle":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerX"},"V6osf285EqsDjijrIAqFl":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerY"},"9aSWs4tHK_QY7lYOu1YdY":{"uri":"/melonJS/docs/melonjs/Sprite.html#currentTransform"},"8_pqKAXGPXuecgHOaTQMG":{"uri":"/melonJS/docs/melonjs/Sprite.html#depth"},"NGZmjSfYc4T5Auh0qXHUA":{"uri":"/melonJS/docs/melonjs/Sprite.html#floating"},"THPSPPWNT-E-I9x-i1iJ2":{"uri":"/melonJS/docs/melonjs/Sprite.html#GUID"},"Cc5SgmDgamt4hBrUiZnN7":{"uri":"/melonJS/docs/melonjs/Sprite.html#height"},"DOG7Raro8IitBxUmzNADk":{"uri":"/melonJS/docs/melonjs/Sprite.html#inViewport"},"iQSKbWcng6c9jPWAJAmsm":{"uri":"/melonJS/docs/melonjs/Sprite.html#isDirty"},"EYVzHq4OMxEiPq9TVYQJp":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedX"},"owjmdaU7bOlCMY87r57n4":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedY"},"INa7N9BOr9OA5znKJbHFR":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFloating"},"lt2xBGRnTqMCv7Tu3bNAn":{"uri":"/melonJS/docs/melonjs/Sprite.html#isKinematic"},"Ywxo1EL6nRDmEP_WWTv14":{"uri":"/melonJS/docs/melonjs/Sprite.html#isPersistent"},"g2BXuVPVwj4U2HqzRC8hd":{"uri":"/melonJS/docs/melonjs/Sprite.html#left"},"_SQG-tdPDjlLtLDQQY9te":{"uri":"/melonJS/docs/melonjs/Sprite.html#mask"},"zi_7MN3Z5DC8eZETazrEC":{"uri":"/melonJS/docs/melonjs/Sprite.html#name"},"KlMLlojAqDIW1Tz1pRUo_":{"uri":"/melonJS/docs/melonjs/Sprite.html#offset"},"Zic-tbUTRnfNQ1QNlxsO2":{"uri":"/melonJS/docs/melonjs/Sprite.html#onVisibilityChange"},"9q1OuSvEShD2OaO7jL7w3":{"uri":"/melonJS/docs/melonjs/Sprite.html#points"},"uOdy4iHkF3GEYyYcT13oU":{"uri":"/melonJS/docs/melonjs/Sprite.html#pos"},"im-WWb-fVb0o4_ltfbXdQ":{"uri":"/melonJS/docs/melonjs/Sprite.html#right"},"Zs1g4LDFebM9lfZgwriwI":{"uri":"/melonJS/docs/melonjs/Sprite.html#shader"},"itf3Bhtrm-AnvJyGqOmN5":{"uri":"/melonJS/docs/melonjs/Sprite.html#source"},"nAn1jLD1LZfuAm0AEEZM4":{"uri":"/melonJS/docs/melonjs/Sprite.html#tint"},"aE6fwftMjxoBSSHIjioD3":{"uri":"/melonJS/docs/melonjs/Sprite.html#top"},"DOgpi-3OtO7_EeRwv3AUP":{"uri":"/melonJS/docs/melonjs/Sprite.html#type"},"XENC3UXgBDfNN4fTpPitZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateWhenPaused"},"ytB9UXWKRNyOxJbbs1AkL":{"uri":"/melonJS/docs/melonjs/Sprite.html#width"},"2Ve-GB6i5BjHCEsAvbi-E":{"uri":"/melonJS/docs/melonjs/Sprite.html#addAnimation"},"ZiGEY2Emk6-p_DRfobzHt":{"uri":"/melonJS/docs/melonjs/Sprite.html#angleTo"},"merXINB7rRwBz81BsztRp":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerOn"},"10zNIeZ2q31iOvwSRmrYj":{"uri":"/melonJS/docs/melonjs/Sprite.html#clone"},"u4lb5yLR5KXYT7VXLG83a":{"uri":"/melonJS/docs/melonjs/Sprite.html#constructor"},"bLAipKxEuWPTPfhwjNQZM":{"uri":"/melonJS/docs/melonjs/Sprite.html#contains"},"b2NurwxusPYqFvCjt4NQ4":{"uri":"/melonJS/docs/melonjs/Sprite.html#copy"},"csMfMfLmClWRZZOX21Oha":{"uri":"/melonJS/docs/melonjs/Sprite.html#distanceTo"},"oqaYrAKJWyf9E1lB4BlZZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#equals"},"rrMtA1BsRiExeMLen6N9z":{"uri":"/melonJS/docs/melonjs/Sprite.html#flicker"},"JztlKXHX129xvylqADcS3":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipX"},"XXqFBbseGljw3iE1Wo72E":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipY"},"zq7CDep9UNbSbDPNrYK-p":{"uri":"/melonJS/docs/melonjs/Sprite.html#getAbsolutePosition"},"CTdfU6gY8RQgnjPfeBBAI":{"uri":"/melonJS/docs/melonjs/Sprite.html#getBounds"},"gV5vVL_faArt1ZgJeJwCS":{"uri":"/melonJS/docs/melonjs/Sprite.html#getCurrentAnimationFrame"},"OTXrlgaQYO1Q1M_85TF3V":{"uri":"/melonJS/docs/melonjs/Sprite.html#getIndices"},"v_MljVbHtM-PesDqGOmua":{"uri":"/melonJS/docs/melonjs/Sprite.html#getOpacity"},"ry6wtd2tZlrU-J8Pet9Fw":{"uri":"/melonJS/docs/melonjs/Sprite.html#isConvex"},"V_uBE3k25Gx-MGDZtLrnl":{"uri":"/melonJS/docs/melonjs/Sprite.html#isCurrentAnimation"},"qnoBD_1iGo419EG-oPX5k":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFinite"},"iDbe_edTtN6DIfdRfXiLv":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlickering"},"YS2rWyxtMYhapUqDAVtSM":{"uri":"/melonJS/docs/melonjs/Sprite.html#lookAt"},"EpIUhUihn_ToB1vIGnJxZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#onCollision"},"bPiiYxCItkuA7YpiQy3di":{"uri":"/melonJS/docs/melonjs/Sprite.html#onDestroyEvent"},"Qd2jn8EGcV6zBVjzQBPQT":{"uri":"/melonJS/docs/melonjs/Sprite.html#overlaps"},"vXNXrM62j6G2A-3mc_R_y":{"uri":"/melonJS/docs/melonjs/Sprite.html#postDraw"},"9QIRRfKoI-IQQeG1UV-Of":{"uri":"/melonJS/docs/melonjs/Sprite.html#preDraw"},"f2hWYvjfYZUbpgdYeNQXz":{"uri":"/melonJS/docs/melonjs/Sprite.html#recalc"},"jmo9SiLXT3XPEs8ZCg8qY":{"uri":"/melonJS/docs/melonjs/Sprite.html#resize"},"PVPgjpjiWQGDLVxumOPYz":{"uri":"/melonJS/docs/melonjs/Sprite.html#reverseAnimation"},"bFeV_m-amHD3haFGmFKRH":{"uri":"/melonJS/docs/melonjs/Sprite.html#rotate"},"OlCzJaaGEyKVoRmtZlVkq":{"uri":"/melonJS/docs/melonjs/Sprite.html#scale"},"d6ykmly_lTHKN4Qs0li6X":{"uri":"/melonJS/docs/melonjs/Sprite.html#scaleV"},"8p7z0tWTgrcZg9mitkINz":{"uri":"/melonJS/docs/melonjs/Sprite.html#setAnimationFrame"},"XBWsXN0ZAzZAltbWhW_Fs":{"uri":"/melonJS/docs/melonjs/Sprite.html#setCurrentAnimation"},"tBhcu38H__wAzxx5qMyKB":{"uri":"/melonJS/docs/melonjs/Sprite.html#setOpacity"},"ztupLtqT2zelmC8EwS-0g":{"uri":"/melonJS/docs/melonjs/Sprite.html#setRegion"},"8CIggfeLCte7CxHXNMSgU":{"uri":"/melonJS/docs/melonjs/Sprite.html#setShape"},"ZiJ_wjozJ4EBnVewHgjDB":{"uri":"/melonJS/docs/melonjs/Sprite.html#setVertices"},"Qjn7g9v0_VbkdaqRfaQ6X":{"uri":"/melonJS/docs/melonjs/Sprite.html#shift"},"cyG49lXqYsIl-K25BvQEn":{"uri":"/melonJS/docs/melonjs/Sprite.html#to2d"},"lvr19HQpdbIjiQ1KD_qFg":{"uri":"/melonJS/docs/melonjs/Sprite.html#toIso"},"kxhGCDATklcmHesUBNQ-e":{"uri":"/melonJS/docs/melonjs/Sprite.html#toPolygon"},"9HurvNv38wPYRiM63T821":{"uri":"/melonJS/docs/melonjs/Sprite.html#transform"},"V69i5Pyl3bZzTKhwXjvUc":{"uri":"/melonJS/docs/melonjs/Sprite.html#translate"},"nlggZnsG0Bup9TlgFEg55":{"uri":"/melonJS/docs/melonjs/Sprite.html#union"},"LMiT2MGfqN0AgQDe9HTlM":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateBounds"},"_KadQ6mRv8VpGdJ_KZX-_":{"uri":"/melonJS/docs/melonjs/Sprite.html#draw"},"5fRUE-P6HcK8_qkpBNj0K":{"uri":"/melonJS/docs/melonjs/Sprite.html#update"},"UPE9MWDriUThhlKlSGvyQ":{"uri":"/melonJS/docs/melonjs/Sprite.html#onAnchorUpdate"},"QahOxPmYGQDRcYXEocaBU":{"uri":"/melonJS/docs/melonjs/Stage.html"},"1zZqR0m-Mjjc6wrEfQxhH":{"uri":"/melonJS/docs/melonjs/Stage.html#ambientLight"},"LJN7OwUV5NhyMHAKSMNFF":{"uri":"/melonJS/docs/melonjs/Stage.html#cameras"},"VaxHNOYi-fxcRJFvmYaA7":{"uri":"/melonJS/docs/melonjs/Stage.html#lights"},"4XRR7God2Hs7U-GEfzgEE":{"uri":"/melonJS/docs/melonjs/Stage.html#settings"},"DOk_J_B3IYWEOdjJ9Wv9S":{"uri":"/melonJS/docs/melonjs/Stage.html#constructor"},"mBC-OOphe02eM6FRq7lze":{"uri":"/melonJS/docs/melonjs/Stage.html#onDestroyEvent"},"nDyR8oC5Fymz1MtEeZbpe":{"uri":"/melonJS/docs/melonjs/Stage.html#onResetEvent"},"BnJJjMp2P34Uc7-gEHNtW":{"uri":"/melonJS/docs/melonjs/Text.html"},"hF5MvDlbQFzNYZF1KrMDJ":{"uri":"/melonJS/docs/melonjs/Text.html#alpha"},"WyE2lWtpPLmW1R_EngE0A":{"uri":"/melonJS/docs/melonjs/Text.html#alwaysUpdate"},"YjKypgvMY267JxD9wPWVW":{"uri":"/melonJS/docs/melonjs/Text.html#ancestor"},"ohQe6QxUzM5Aus9dN33w9":{"uri":"/melonJS/docs/melonjs/Text.html#anchorPoint"},"kz0H25UJigu_jl-Tx2jbU":{"uri":"/melonJS/docs/melonjs/Text.html#autoTransform"},"z8PdJpw5-0oSfT6jsAYoX":{"uri":"/melonJS/docs/melonjs/Text.html#blendMode"},"6VwafHSU9LJMlVEjaRKZ9":{"uri":"/melonJS/docs/melonjs/Text.html#body"},"wXDymsDiQcpHNszQhGPzG":{"uri":"/melonJS/docs/melonjs/Text.html#bottom"},"2I6fbH9LiBS4LjU0h-9gw":{"uri":"/melonJS/docs/melonjs/Text.html#centerX"},"jGqguhr-ufKF7IM2HD3tl":{"uri":"/melonJS/docs/melonjs/Text.html#centerY"},"B895ib9ck8zmrxPtJWXei":{"uri":"/melonJS/docs/melonjs/Text.html#currentTransform"},"5xUno1fp4jjPrE42Y9oyg":{"uri":"/melonJS/docs/melonjs/Text.html#depth"},"VSSsNyiaa5VRhJ0yJPaPd":{"uri":"/melonJS/docs/melonjs/Text.html#fillStyle"},"RMBdLocpx5O8avLwf3zxb":{"uri":"/melonJS/docs/melonjs/Text.html#floating"},"_GU_l0qcVYnceEVAClZMc":{"uri":"/melonJS/docs/melonjs/Text.html#fontSize"},"o4SgUpvsTcWddmYtCH_ZC":{"uri":"/melonJS/docs/melonjs/Text.html#GUID"},"OEljfBtHGu4qO8Ll-W2vP":{"uri":"/melonJS/docs/melonjs/Text.html#height"},"jkNKnkL26w3OggL8Q4WCJ":{"uri":"/melonJS/docs/melonjs/Text.html#inViewport"},"Oe1rMC6LFrVisn8QwcDy_":{"uri":"/melonJS/docs/melonjs/Text.html#isDirty"},"oucyt9GncbP2pBtiOlKCp":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedX"},"OnY2_7FEZ_haGowedMBI-":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedY"},"8kSv_dD-i0__I7s1lA5x8":{"uri":"/melonJS/docs/melonjs/Text.html#isFloating"},"FH_RllCLZUja82sVn9bVl":{"uri":"/melonJS/docs/melonjs/Text.html#isKinematic"},"jN-Rd4SIVXo5WwmS_exxc":{"uri":"/melonJS/docs/melonjs/Text.html#isPersistent"},"awqJ_f5j5V8nMAhz1XV29":{"uri":"/melonJS/docs/melonjs/Text.html#left"},"JXea7SHdXkWryXgzFHaop":{"uri":"/melonJS/docs/melonjs/Text.html#lineHeight"},"yxLmBLXcyn50KDEpUnQhZ":{"uri":"/melonJS/docs/melonjs/Text.html#lineWidth"},"GhfSvx4nWC0ek_dtErIiN":{"uri":"/melonJS/docs/melonjs/Text.html#mask"},"k-tNQ3UOf8ZLXenisb6gv":{"uri":"/melonJS/docs/melonjs/Text.html#name"},"zEyNCOEGXgxAzKTHq9lun":{"uri":"/melonJS/docs/melonjs/Text.html#onVisibilityChange"},"hdpwkLrUMmb--4JmDXjOH":{"uri":"/melonJS/docs/melonjs/Text.html#points"},"mrlrvPK5h3BqXcmMTI62B":{"uri":"/melonJS/docs/melonjs/Text.html#pos"},"JuIcvC-CYo5jfJWF76URx":{"uri":"/melonJS/docs/melonjs/Text.html#right"},"2k-kMActRuatddfZUOMBV":{"uri":"/melonJS/docs/melonjs/Text.html#shader"},"S-eJzZLxmAOJkI_p-THdg":{"uri":"/melonJS/docs/melonjs/Text.html#strokeStyle"},"gS7iqXVLB5EMuVSRm8Uj-":{"uri":"/melonJS/docs/melonjs/Text.html#textAlign"},"MkCfdRKPTdQecKB3uLL67":{"uri":"/melonJS/docs/melonjs/Text.html#textBaseline"},"hjhBs1C3jzQfSlTuMpMAx":{"uri":"/melonJS/docs/melonjs/Text.html#tint"},"0FieRpy4wAZHgmRgVIVHv":{"uri":"/melonJS/docs/melonjs/Text.html#top"},"IcaJwIJkIrFNvKP9hhjtL":{"uri":"/melonJS/docs/melonjs/Text.html#type"},"_3-CZ5eA5O94IlXSFhUX6":{"uri":"/melonJS/docs/melonjs/Text.html#updateWhenPaused"},"HOHCf_Q0dmKEaYhXcuTcP":{"uri":"/melonJS/docs/melonjs/Text.html#width"},"NpZOuwJmWXcSjyfuwOSTl":{"uri":"/melonJS/docs/melonjs/Text.html#wordWrapWidth"},"TEDnV7oLVe3XRoM-Rfkxb":{"uri":"/melonJS/docs/melonjs/Text.html#_text"},"_2zFVj4BCnaAtaCubDVuo":{"uri":"/melonJS/docs/melonjs/Text.html#angleTo"},"DcKnLiMuJLyfC-1cEWSWZ":{"uri":"/melonJS/docs/melonjs/Text.html#bold"},"vl-BXiWBaT6HkmDKwfniG":{"uri":"/melonJS/docs/melonjs/Text.html#centerOn"},"sB6LH6F4X4OanGCk47lpk":{"uri":"/melonJS/docs/melonjs/Text.html#clone"},"zHm4IrvOXkpq2mJHa6ewv":{"uri":"/melonJS/docs/melonjs/Text.html#constructor"},"ysY8TrL9hgnqzdXEubyxj":{"uri":"/melonJS/docs/melonjs/Text.html#contains"},"b53vxhwn8srqcjlCZWGI5":{"uri":"/melonJS/docs/melonjs/Text.html#copy"},"44B7mkkdyqUl6-rSAHx8Z":{"uri":"/melonJS/docs/melonjs/Text.html#distanceTo"},"Q0UoKK_7-ggEL_Q2AOsjn":{"uri":"/melonJS/docs/melonjs/Text.html#draw"},"KlWhSp7R1oitWLWQ8NqMz":{"uri":"/melonJS/docs/melonjs/Text.html#drawStroke"},"_R3dBi6myXy3Z2UA9zHzL":{"uri":"/melonJS/docs/melonjs/Text.html#equals"},"yTCz_gYBaFifpckUVpkAx":{"uri":"/melonJS/docs/melonjs/Text.html#flipX"},"4JOTINY_mYs_APc3v7iCS":{"uri":"/melonJS/docs/melonjs/Text.html#flipY"},"IkNmjEdc7QTUg9A2OWDwW":{"uri":"/melonJS/docs/melonjs/Text.html#getAbsolutePosition"},"zWNypHo_9kw50vUr_ciJ8":{"uri":"/melonJS/docs/melonjs/Text.html#getBounds"},"nRHK0Z3uu7T2kL5zQLOgA":{"uri":"/melonJS/docs/melonjs/Text.html#getIndices"},"bZX_xcGFa1gfw-7W-AsYQ":{"uri":"/melonJS/docs/melonjs/Text.html#getOpacity"},"fB4UGSAqZnlXwtgD0n08b":{"uri":"/melonJS/docs/melonjs/Text.html#isConvex"},"SNa4jkkpYk7HvhVunSRVE":{"uri":"/melonJS/docs/melonjs/Text.html#isFinite"},"m8fIocMDjp8URRSYT_Zig":{"uri":"/melonJS/docs/melonjs/Text.html#italic"},"rTz21XzVR2WJm4rxuNt01":{"uri":"/melonJS/docs/melonjs/Text.html#lookAt"},"LjbDpfHReSF17mPjLRLsN":{"uri":"/melonJS/docs/melonjs/Text.html#measureText"},"S7lCmgdWxPXCIWHSxizVx":{"uri":"/melonJS/docs/melonjs/Text.html#onCollision"},"zWLoVOBFpLrcQIRN1JFZY":{"uri":"/melonJS/docs/melonjs/Text.html#onDestroyEvent"},"jQZkWZG7NtkS0W7lKn3yV":{"uri":"/melonJS/docs/melonjs/Text.html#overlaps"},"A_D-n6aGMW3SSJssgQewe":{"uri":"/melonJS/docs/melonjs/Text.html#postDraw"},"K0Y_p9koy5wfDENWu1P0Z":{"uri":"/melonJS/docs/melonjs/Text.html#preDraw"},"dbr9Rg37yg-_-hdGO6DMF":{"uri":"/melonJS/docs/melonjs/Text.html#recalc"},"s6pyOCdXqmbQA_G7XONpS":{"uri":"/melonJS/docs/melonjs/Text.html#resize"},"H32pdcKvk118LZVhL9rfr":{"uri":"/melonJS/docs/melonjs/Text.html#rotate"},"pD-TcMQbo2MimlB0dGGOn":{"uri":"/melonJS/docs/melonjs/Text.html#scale"},"5FDwy3ummJH0lndUc9Ofs":{"uri":"/melonJS/docs/melonjs/Text.html#scaleV"},"VpMTMYgsvPIJnrL-c2IUV":{"uri":"/melonJS/docs/melonjs/Text.html#setFont"},"Ov9EDwoZld2kg2_mATvYA":{"uri":"/melonJS/docs/melonjs/Text.html#setOpacity"},"5fU5luCzdzLz16jUXIXg_":{"uri":"/melonJS/docs/melonjs/Text.html#setShape"},"bsMcDhmdGt7b1P8nNHH90":{"uri":"/melonJS/docs/melonjs/Text.html#setText"},"5BQ6gb2Th-zwges0G8mWU":{"uri":"/melonJS/docs/melonjs/Text.html#setVertices"},"DYGzCqRJUncBwC4vD8nW4":{"uri":"/melonJS/docs/melonjs/Text.html#shift"},"7GVXZAKZsHD4lBd20mhv1":{"uri":"/melonJS/docs/melonjs/Text.html#to2d"},"82feGace5tsftJB-ufbE2":{"uri":"/melonJS/docs/melonjs/Text.html#toIso"},"DQwCigHoJWOTkjAgUovtF":{"uri":"/melonJS/docs/melonjs/Text.html#toPolygon"},"NhSsfJdQlu-crq25H5AiY":{"uri":"/melonJS/docs/melonjs/Text.html#transform"},"3QKWtbuT3dXJ9HpzNGKEI":{"uri":"/melonJS/docs/melonjs/Text.html#translate"},"eZH3OT5Ir26ERRk6KjcDp":{"uri":"/melonJS/docs/melonjs/Text.html#union"},"RBn7osj57SwmX18Cjr13p":{"uri":"/melonJS/docs/melonjs/Text.html#update"},"q_ceYLhlFQHjSNsg_J1gx":{"uri":"/melonJS/docs/melonjs/Text.html#updateBounds"},"omZOx7b5BuzRHjBjMkee1":{"uri":"/melonJS/docs/melonjs/Text.html#onAnchorUpdate"},"f1nwZBziODVy6aEL2dn3-":{"uri":"/melonJS/docs/melonjs/TextMetrics.html"},"gYoxPMOja2Y2YWOoog4SO":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#ancestor"},"6c7htCkiBqNybYPbf65Fn":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#bottom"},"iTxsyciCYyhqxkUhbgiQd":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#center"},"vf-6lEI3BcwZ50pjbaDY5":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerX"},"i8Pe6cVKWbVlmSu8N9FAi":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerY"},"com1viPV1xQMpzd3stL-b":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#height"},"VhWuNy9vP9d_X2dpvldVm":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#left"},"PibM9jLRea_mHumZo01wO":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#right"},"D7u2O2VdG0QQcaD0DGy0m":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#top"},"kFNP7QUTohczGphZeSWw1":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#type"},"VhIbjJhU7btykk9NyL656":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#width"},"-xsFVh1TcCuTvR3ACMscJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#x"},"-Pei9NxPtc_yeYPhj4KcK":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#y"},"5_DzYxnezEZeZJaWzQ4px":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#add"},"ed28Di-c6N_qs_WwPTJf9":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addBounds"},"9ojirEqAbPAhk-96Dhhcu":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addFrame"},"VIt5Kuvi1dYOSxV6Gg2RQ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addPoint"},"ZbdUYUJowUsRDsn6KnTnH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerOn"},"llstF_OexzIXOIGNZ-nsD":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clear"},"N87R5bQBNOKolJSZasoBf":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clone"},"e-kNcrqoIKdXQ9G2Lxg-s":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#constructor"},"PHj17iAF_hUPQ7Z9zE3zH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#contains"},"oqGE-6nbfkOiQSosnc78z":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#isFinite"},"c02ZJGKuvMl48sZntko9n":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineHeight"},"JhbfKrztNc-htl-Hhmtgr":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineWidth"},"wm3qdDSBrpu6WuJxrogeD":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#measureText"},"D6M6s96iXXzWKPsk3aojL":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#overlaps"},"9vBPPO55kFwb7Lan7jklX":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#setMinMax"},"Cqi3uKgB4Mv3lI5TvKa5F":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#shift"},"kHRjTD2slzSwU3vLrfoOs":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#toPolygon"},"YDnaKVxgEBQufDyVYanvC":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#translate"},"-r_IrDGDskExyavh7B-b3":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#update"},"PoRYZ9qZQwA0dq7Qhd7bH":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#wordWrap"},"wBgCTXZnc1wl3s8j1sM6M":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html"},"scgVvZqXjyy9I_2xZW2gh":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addRegion"},"70xc4zgFWaTjtY8g6QGtt":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addUVs"},"WnhTzUykkJblpecL2vbBS":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#constructor"},"0y1y5ocjHiqpkvOHXPAr-":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createAnimationFromName"},"luEVX2APjpmHkBBsy9dbR":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createSpriteFromName"},"XcHX7F0egorl-LLGGFPFw":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getAtlas"},"Df-tybuEutY4_27IVBqwx":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getFormat"},"8sCIr99QVSJJBXOa185TZ":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getRegion"},"jGywz5A2BLTDerHzQ-Hs0":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getTexture"},"Yv6MZG3k3g2ZIFX8DQFEs":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getUVs"},"tDI1eQAvluDvQHEy5CAsO":{"uri":"/melonJS/docs/melonjs/Tile.html"},"AeVVpA2Ri198uZUSmbn8C":{"uri":"/melonJS/docs/melonjs/Tile.html#bottom"},"w6CAc1TE_zMeKw20uZuVO":{"uri":"/melonJS/docs/melonjs/Tile.html#center"},"EUutirsWjSHQ577cNmWHl":{"uri":"/melonJS/docs/melonjs/Tile.html#centerX"},"1sTDahLHUCzt5dLfGSzQr":{"uri":"/melonJS/docs/melonjs/Tile.html#centerY"},"pIYMsHT3jhCJ7_DFp6ydR":{"uri":"/melonJS/docs/melonjs/Tile.html#flipped"},"3JRvyyhKbhGMvU2oiQQP-":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedAD"},"9gfqr16Y50AYEDcCJZS-2":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedX"},"VPFJO8opfH0R3o7DUzexB":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedY"},"YIZGiJLMNgA_Bo8LBN5_k":{"uri":"/melonJS/docs/melonjs/Tile.html#height"},"XrOnvmWyzeOCSShhFS-7C":{"uri":"/melonJS/docs/melonjs/Tile.html#left"},"o0ETl0yjOyE7e1aNbrDiq":{"uri":"/melonJS/docs/melonjs/Tile.html#right"},"OI2O-ieJtEBVu1KP7uFx7":{"uri":"/melonJS/docs/melonjs/Tile.html#tileId"},"7p54NwC7XCWiWAgGCkvDV":{"uri":"/melonJS/docs/melonjs/Tile.html#tileset"},"gkeiciAMdzlavP0md1w5c":{"uri":"/melonJS/docs/melonjs/Tile.html#top"},"VrSQjMI11r21PGh1dQDS4":{"uri":"/melonJS/docs/melonjs/Tile.html#type"},"hCB1IH-tCnl_oEF4_75kn":{"uri":"/melonJS/docs/melonjs/Tile.html#width"},"VJg9kirc2rdo-yhMRjca-":{"uri":"/melonJS/docs/melonjs/Tile.html#x"},"_txoBERYMauogSqNBz975":{"uri":"/melonJS/docs/melonjs/Tile.html#y"},"OUXTM9XbFDhvTdctTWzyS":{"uri":"/melonJS/docs/melonjs/Tile.html#add"},"XMBsMkPuBSN0CrCfdx6H9":{"uri":"/melonJS/docs/melonjs/Tile.html#addBounds"},"uDbV4jQlVFiyLidXVI56i":{"uri":"/melonJS/docs/melonjs/Tile.html#addFrame"},"TVHD91LwAV3dvl3Fk_0H8":{"uri":"/melonJS/docs/melonjs/Tile.html#addPoint"},"4-vIWQQKIaYp_lZa-N8bv":{"uri":"/melonJS/docs/melonjs/Tile.html#centerOn"},"FTf2IZdLoT_WQUXySIqCN":{"uri":"/melonJS/docs/melonjs/Tile.html#clear"},"duQ-Ntw2J6_KImfbR58ml":{"uri":"/melonJS/docs/melonjs/Tile.html#clone"},"pO8aIBOdlEUTOTqsG-Zpp":{"uri":"/melonJS/docs/melonjs/Tile.html#constructor"},"ZKJAkqip--jmLkeFErchA":{"uri":"/melonJS/docs/melonjs/Tile.html#contains"},"hROh4wEYUw3C6KsKf8_LO":{"uri":"/melonJS/docs/melonjs/Tile.html#getRenderable"},"54vpH3ph2TbNX_osfbjPK":{"uri":"/melonJS/docs/melonjs/Tile.html#isFinite"},"ATw6t6JIkZH7_WqYjTYQG":{"uri":"/melonJS/docs/melonjs/Tile.html#overlaps"},"1Sd323SzBD6N4pCGoIHgv":{"uri":"/melonJS/docs/melonjs/Tile.html#setMinMax"},"ALIBlhhtatju5qHdjp5nN":{"uri":"/melonJS/docs/melonjs/Tile.html#shift"},"sosKX0o76pDwyHoW2O6Zk":{"uri":"/melonJS/docs/melonjs/Tile.html#toPolygon"},"Rv-vw0Fko0gKvuwK_v7lm":{"uri":"/melonJS/docs/melonjs/Tile.html#translate"},"I34cBbZmoo_dMTMOWvQBg":{"uri":"/melonJS/docs/melonjs/Tile.html#update"},"p4f4cV6CSF7BiuvGyBFHp":{"uri":"/melonJS/docs/melonjs/Timer_.html"},"yNDzG3uYj5hvl-_y2SuXP":{"uri":"/melonJS/docs/melonjs/Timer_.html#fps"},"G0LcawEcY3FYk1dy5dZix":{"uri":"/melonJS/docs/melonjs/Timer_.html#interpolation"},"51hX33LpDic-mugJhnMzb":{"uri":"/melonJS/docs/melonjs/Timer_.html#maxfps"},"slbGbT9BdfbdLqr7oSrmq":{"uri":"/melonJS/docs/melonjs/Timer_.html#tick"},"SF38RdBBsdfU1PF_-RYfH":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearInterval"},"Hg72KN2EJ93HIEZjYi3vd":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearTimeout"},"DVuJgO3-CHgaLdl_hsllK":{"uri":"/melonJS/docs/melonjs/Timer_.html#getDelta"},"Hq_SoSbiec-wxVjN0jtex":{"uri":"/melonJS/docs/melonjs/Timer_.html#getTime"},"fyhSk5QDUe8fz6kaSufU4":{"uri":"/melonJS/docs/melonjs/Timer_.html#setInterval"},"M2ZFIU_loFtd4C9sOHSzA":{"uri":"/melonJS/docs/melonjs/Timer_.html#setTimeout"},"CK4hbJtz0rd5fDlNVQBHF":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html"},"1nEvQ0G-qakOLtmoTylc8":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#canRender"},"2TKoLMb_g_fjMniWmGvrm":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#constructor"},"hH_ARcIykFAwJCkEfCbbU":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTile"},"dmO6nhVw4X_FqQsHD6W-3":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTileLayer"},"5ghPDUi4A6grU7_UTi7vE":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#getBounds"},"o2BixfwA9uBY-lK7ic_hS":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#pixelToTileCoords"},"_N8lVo0-nHYgFMpc4bPky":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#tileToPixelCoords"},"Iy79hgR3J7dsV5pDqJIpR":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html"},"m6CxUAhS9PdKY96JcGqdg":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#canRender"},"J6TVZNYDVwkWJ1--uFH18":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#constructor"},"W4CzeRA4NhNStnSW2jsKc":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTile"},"TfmqRfOhlR9Lv1mToQEoC":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTileLayer"},"tovgD-r6wb9UYE2GPhVLg":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#getBounds"},"iB9C3hGW6Lx3SXDb147d3":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#pixelToTileCoords"},"qS-MA47uCm4636fnVE516":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#tileToPixelCoords"},"DVveWtpUmAaVF5Tu1XTox":{"uri":"/melonJS/docs/melonjs/TMXLayer.html"},"UNMOD8yjYwZSBu8lbYRCF":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alpha"},"gChNJXrzZoFe66Ay1Nk1p":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alwaysUpdate"},"x2F8rD9eLzFxpIjGjK1xN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#ancestor"},"0i7cJVqS-2h7EC4QKsW7K":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#anchorPoint"},"SdHsC7FFY9Kh2vqK8WU9i":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#animatedTilesets"},"g8PMKuAwKjLro96PJ-crQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#autoTransform"},"xIJTPaUSpD7t2OSeNGJav":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#blendMode"},"eBUiB38MBR7Drnp7b_l1T":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#body"},"ELaxjNLUw8CX17SA5kUMR":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#bottom"},"WgZHgN9N-n1kwGATh6vMp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerX"},"U73oMzHSVhmWujQNGfvXR":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerY"},"zW1gFzUuwLf0cIT30_Yol":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#class"},"68r7CKyHtX6JYXD1yFoLJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#currentTransform"},"tkAaS1HANov81eK6i_WEf":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#depth"},"rs1b8TXlnSNovnaa6-su-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#floating"},"mGo_te_abi-7OD6Fwypla":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#GUID"},"aioOqsxW63wW0Haoa5GLg":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#height"},"IgszG8fkvNgc8sgo8qb86":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#inViewport"},"50pXKvTS6Cvf4a46Z2mOG":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isAnimated"},"e9t02_QyJbhpfIDZK4ESc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isDirty"},"M8arwXXMon-BX5iCJ1TEB":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedX"},"ZKWA3mrcx-mNNOfBmQwhk":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedY"},"nFefVvGii2MAP_hyk4f-A":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFloating"},"poDk4pbhsFYB3v7AocNLQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isKinematic"},"rjWKt85jPMl6n9IKgUW2Z":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isPersistent"},"YO0SLvV7RtVJv3c2CZrW9":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#left"},"zPLZ_v92BVpX-MdGbmoe8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#mask"},"tWzWxu-cetxTyMamxc8oD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#name"},"zfTpvFIyRzq3t-nxDIf56":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onVisibilityChange"},"wcLEDhNPIDkoMN9yIWRho":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#points"},"-_I0s65hjguDTuHXShxF5":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#pos"},"VgLjaJpbzNPEuAduxJwuh":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#renderorder"},"ycKIPfNUx1g0CFKW8rycB":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#right"},"fjSFpX49KF1l5VYLpE8Oc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shader"},"U9LPrz5ln_KOLzwKyfPt9":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tilesets"},"cujgxCCAVCvSHHbvGZeGe":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tint"},"qOLypRr3ZtDVUbvEwNgCh":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#top"},"3BPtm2zjQi0vT9tbTRni6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#type"},"q1ai8JofZbljyPhyOUT_T":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateWhenPaused"},"2XYZAnEOT1ZIXRoAzyrDP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#width"},"6CRa-0yJnQQdnJPPNfdYN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#x"},"BFNRmvR5ldkEdy9I_X44U":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#y"},"-fjXlGP6bZR8zYCtMop6r":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#angleTo"},"INWzqjnffOd3wNC5p5EOZ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#cellAt"},"lPM1QelvKZ0SYjPeNYaiZ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerOn"},"7-n7ngGaOJk1jeeCv9O0J":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clearTile"},"6IOkGOVK6zQ0xiBQHlu0e":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clone"},"_iM6JDLsOV0Vl8IsWVkSN":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#constructor"},"kmzQSSI-QzwvZHz-_q95p":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#contains"},"fZvV7tOP_-M6YzV1eJK1J":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#copy"},"CLAh_QBx0d33dGiTUZJhr":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#distanceTo"},"tpuu4Mw8uuGS0KFOOa1pK":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#draw"},"7HQWFPpL5niDQooVli_EP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#equals"},"kJvwZqlIFFcLP9RWyTLHj":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipX"},"8-D86Qm4iXYAfeK3NZyBH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipY"},"z0v3Ju5-16sB_P0JPVj5s":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getAbsolutePosition"},"Z62DZmQrQ2NGWPBRp4PEc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getBounds"},"IDd-9Iym2KaIHedQt6zZR":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getIndices"},"PgMVfMdIoJLMEUeflwV5O":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getOpacity"},"Wm1KlTkwZbCUqqiPgr3kz":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getRenderer"},"4hnfV_b2vB21LDrSSGYgZ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTile"},"lSfMWS7-dovm24Yh2Hg2n":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileById"},"56FYBP0ORGTweML5Wk7j6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileId"},"1stmZKavLMDhabRFtkcWT":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isConvex"},"QlSJO8QASpOL5BALZFvDa":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFinite"},"w9IZGRDcg6ML1edB-ad0S":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#lookAt"},"QmnIwaMS0jU_q8074IwSs":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onCollision"},"tIdK6LVMf5lY02Xm0h2Jd":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onDestroyEvent"},"OJDFgz-pcKDznmDeXqCJ8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#overlaps"},"6GeGs_4t1iCet-lf_eB7J":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#postDraw"},"rVwzkRVCAO_DEhxljPq3x":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#preDraw"},"mB9H1q6yqP6yyUF4oA7rm":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#recalc"},"q7IDxtKjPlHkuB9gOL5x6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#resize"},"uB7H9ZKH8W5CcfnI2ICFe":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#rotate"},"TgOSsnDTUshYUCIPbdRGh":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scale"},"zUm9HulQXJw7QadDN9-lP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scaleV"},"preBkPtgAr_kpP6AwIRrA":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setOpacity"},"wlfO4jjkgcx9vnH3xoT7-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setRenderer"},"MFFmtfFBOA8AR7dDaZcwz":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setShape"},"tjUAeS6lLNrbP1sr-kFeU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setTile"},"k7PqUXCrB97s__QRLgrwz":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setVertices"},"Ul-9BrM-J_AxsfEudJJc3":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shift"},"ydvyTF_zK-a7FToScG455":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#to2d"},"qF0T2ZCkrj7wstORWg41t":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toIso"},"vlfxT5nYlBZBy5tuXQL1r":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toPolygon"},"3dGePBvkvS_dpGZinMzRn":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#transform"},"tYL6VXVrFt6PCKC64wcHD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#translate"},"2OBldp1N9SxcNtbVgjkZQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#union"},"XF-lMqbSIm2ni4JnkCkA7":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#update"},"PexjDLDP37rTv0psdQ1X3":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateBounds"},"1GHsCa5DCiq1R0ymrJM-9":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onAnchorUpdate"},"pA6zZd98vYKaMcBeQMwKj":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html"},"Gjs_H1PVBo7Kp2-uQnxbq":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#canRender"},"1Nf0870qNkNFI8ZYWM6Na":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#constructor"},"JKIJzKYkFvslipvXnZ6JR":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTile"},"E52lFJYxyrAWEz8z6Uqgu":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTileLayer"},"BC1HLLz5v5-ZaQ3EQsnfR":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#getBounds"},"jIrMAsy3pMadfKdAOjSE7":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#pixelToTileCoords"},"sf0Ste__kWAZFBkzSHtkf":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#tileToPixelCoords"},"lB2uNIp8GQoX6iKppu5XD":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html"},"X09DXs9R3FnK4gmSmWmiw":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#canRender"},"dg5RW2qCWer3HzGqRgywK":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#constructor"},"752n8KDud-vknSPi5bmRE":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTile"},"p1BYwVu02YKsaObjpr_Yl":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTileLayer"},"7MPnUE9NrRIfEGACSxjDB":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#getBounds"},"yw4mXtUX_-UmlRWmExmA6":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#pixelToTileCoords"},"e-oVcMX-T_3M1qT2Zzge5":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#tileToPixelCoords"},"d4H8IiKGbyugA1_D2RMXQ":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html"},"VYoK2MIYtU0jRS0fSyTMM":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#canRender"},"G_HaOwIv6AsizZzfr3UvT":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#constructor"},"h_aQ3GuawYf7hPh1-GVfG":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTile"},"qnEzGKMPh7YZMaGhp6zzm":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTileLayer"},"dnE6U_g8fWuhH_ZlDAqRU":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#getBounds"},"w5yBvf2xKXGPSFapXNAF2":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#pixelToTileCoords"},"YZR29zX41CdSwhttZ4AMy":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#tileToPixelCoords"},"6Zzi3szZCx3jUt23t66ur":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html"},"7wCStDW7NZBOnwSiNz17e":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#class"},"08gQqbfkO5mPRmIjw9yT3":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#cols"},"2Cc4pQot4Ug4bnjsEYn77":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#infinite"},"Kj96ZoTy_m2WhonIUXhwn":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#name"},"KM3MWc0Db5U-7lhzkEXnG":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#orientation"},"Bs9-e3c8N54qaKWGIz_sx":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#renderorder"},"1xwrSuKxIpTvpy25-iQKf":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#rows"},"jgEj0wmVT91jNdyc3Q11W":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tiledversion"},"99robX-Czp4_oryjGiA56":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tileheight"},"MbMLp_E23fy7gIs5ICJiZ":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tilewidth"},"r5zbYT8KWuOUppm_0AW_d":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#version"},"LZB337i1mmYKqUijMDt1P":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#addTo"},"nyoUf7yKbS2ZdPMCCoXrw":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#constructor"},"03ahMdyw9f6YBKXYmyCrH":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#destroy"},"aEwR_GyFRJEhTO2XnhzJY":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getBounds"},"6SrGLnmURJQp8ImJw5Yhi":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getLayers"},"ir79Tjw4DBEEuQtXV3K7V":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getObjects"},"WKFOTF5o68OT5lMqVH2AT":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getRenderer"},"7YqwmTRcjZ4BFDndLkc82":{"uri":"/melonJS/docs/melonjs/TMXTileset.html"},"3dFCUfIjWoBzBKzd69i43":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#class"},"MJ9n3rvPgj4czirLJN6OO":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isAnimated"},"KsluiAzd5pLUPaum0jOkx":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isCollection"},"1TT9IJ7-Jlow51JDO0fMy":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#_lastUpdate"},"Qf1VrPJEnHBM0yRwif9jr":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#animations"},"juFleIi9Y3P3KvYKqDxjv":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#constructor"},"v8Afr5Zap-CybJPj-PfGA":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#contains"},"i6JCJVwDq4hQMaQu-why5":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileImage"},"jFg6AerkTYg7PNmy-k_36":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileProperties"},"sOSaOMz8uDXHEu8629w21":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getViewTileId"},"yiTwPzD6kqiRQSSWz3jrJ":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html"},"Ap514gbsn0T9ptR_1ebpV":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#add"},"OkCR92oKdv2gIfaNpqn_6":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByGid"},"3mWVZFonho25TWIx2Ct0N":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByIndex"},"z5Tfk5_NgatmJsmEhWP6v":{"uri":"/melonJS/docs/melonjs/Trigger.html"},"5vHriCmwN4UIxL30y7Oxa":{"uri":"/melonJS/docs/melonjs/Trigger.html#alpha"},"2wdHMSGTU_ZyCwuDcPlSF":{"uri":"/melonJS/docs/melonjs/Trigger.html#alwaysUpdate"},"CmFhdCOpLivJM-BjG8nlW":{"uri":"/melonJS/docs/melonjs/Trigger.html#ancestor"},"0XDgCuA9yxG-UliwTggaO":{"uri":"/melonJS/docs/melonjs/Trigger.html#anchorPoint"},"l4F2rLgXCIoBnnX4O0w3j":{"uri":"/melonJS/docs/melonjs/Trigger.html#autoTransform"},"PmTch5N54zQwzgmv9LuLc":{"uri":"/melonJS/docs/melonjs/Trigger.html#blendMode"},"mcORMvcNkM-o_4WAeWM5j":{"uri":"/melonJS/docs/melonjs/Trigger.html#body"},"-vlJVW5FfABL5ksLZ_PsR":{"uri":"/melonJS/docs/melonjs/Trigger.html#bottom"},"nAhqNDJ2Jv6Im3iF4Mjcb":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerX"},"6-mlaz7PlEy8a_xkM7AYQ":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerY"},"Kcs2V2TtAcMw4BPL4Z8II":{"uri":"/melonJS/docs/melonjs/Trigger.html#currentTransform"},"xC_a1WQHFKO1pGfuP-rnr":{"uri":"/melonJS/docs/melonjs/Trigger.html#depth"},"dRWFIS6PSksvT59qlPBiW":{"uri":"/melonJS/docs/melonjs/Trigger.html#floating"},"CLnO-n4pPZ50FMdEAlMsj":{"uri":"/melonJS/docs/melonjs/Trigger.html#GUID"},"0iJsTsjn0GfhwuIfadY3P":{"uri":"/melonJS/docs/melonjs/Trigger.html#height"},"eQCIgZU_xK9_WXAIQeFHq":{"uri":"/melonJS/docs/melonjs/Trigger.html#inViewport"},"qL0q4uxTJsYaJ_Ej_KJCy":{"uri":"/melonJS/docs/melonjs/Trigger.html#isDirty"},"g6MPit0iDWwbYKnt14PXR":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedX"},"9xSJb374fkv_XBwLAzWrT":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedY"},"osXpAE0t27ZMEwMErO9nX":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFloating"},"tbg6wYGlreqxXYwM1-RYv":{"uri":"/melonJS/docs/melonjs/Trigger.html#isKinematic"},"Icz7VWBJljEGb4GFk1w2x":{"uri":"/melonJS/docs/melonjs/Trigger.html#isPersistent"},"l4ZlDmqxof8JlPGFYjbIK":{"uri":"/melonJS/docs/melonjs/Trigger.html#left"},"eerwf2bW4kNEE-7fjrlN6":{"uri":"/melonJS/docs/melonjs/Trigger.html#mask"},"DjfDPZfpeKrFUDU2lzee0":{"uri":"/melonJS/docs/melonjs/Trigger.html#name"},"ZmQvwiRUoMVUYsSAgtAAL":{"uri":"/melonJS/docs/melonjs/Trigger.html#onVisibilityChange"},"gdpfWQi5RWrDWydD6OOE5":{"uri":"/melonJS/docs/melonjs/Trigger.html#points"},"vrm88SRW3SHLmBG9aOOAj":{"uri":"/melonJS/docs/melonjs/Trigger.html#pos"},"dAHE0dQ4Iikst1DqSOuGP":{"uri":"/melonJS/docs/melonjs/Trigger.html#right"},"jvbujOWMMcS5ZD-jFGPRm":{"uri":"/melonJS/docs/melonjs/Trigger.html#shader"},"iyxqTvDKDRsq5gDCGLKBB":{"uri":"/melonJS/docs/melonjs/Trigger.html#tint"},"Cz-fhYsDEHQkmSucA3Tr0":{"uri":"/melonJS/docs/melonjs/Trigger.html#top"},"zEt7c8Vbt68vPOguYbMGn":{"uri":"/melonJS/docs/melonjs/Trigger.html#type"},"ID-R8w7zz89tbngsdCFp0":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateWhenPaused"},"XAUaXVcOATmVdREEGpTG_":{"uri":"/melonJS/docs/melonjs/Trigger.html#width"},"G9nOPSr8KB8c3nGWrgd5B":{"uri":"/melonJS/docs/melonjs/Trigger.html#angleTo"},"YpGQcrl4o-j6hvyS0qiqk":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerOn"},"tdi7YCzpwdkkfJAbG-byV":{"uri":"/melonJS/docs/melonjs/Trigger.html#clone"},"kB2gV-LwmnC5XNSJsHaZx":{"uri":"/melonJS/docs/melonjs/Trigger.html#constructor"},"Fz84qoHan4f91IBkq4dCZ":{"uri":"/melonJS/docs/melonjs/Trigger.html#contains"},"_esmn0h9yxuCJZpe952VF":{"uri":"/melonJS/docs/melonjs/Trigger.html#copy"},"w4sZ1nfkABso_gtBaY1dy":{"uri":"/melonJS/docs/melonjs/Trigger.html#distanceTo"},"55256WDonV1hupo6u0PMP":{"uri":"/melonJS/docs/melonjs/Trigger.html#draw"},"Vc3uKxAT4ePxtgYpFPGMh":{"uri":"/melonJS/docs/melonjs/Trigger.html#equals"},"Ae7BPDVLNo7aqoMx0sKft":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipX"},"Jv5KFHgi9gliYs0TxHGYp":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipY"},"sq_m7zvhr1JVRD8aH-F6i":{"uri":"/melonJS/docs/melonjs/Trigger.html#getAbsolutePosition"},"2hbD-GZjRKIERTXdgG_S2":{"uri":"/melonJS/docs/melonjs/Trigger.html#getBounds"},"_9J5vvde4IFnR_i4BvLQ6":{"uri":"/melonJS/docs/melonjs/Trigger.html#getIndices"},"usgCZ_zrJG15bI8KjAayM":{"uri":"/melonJS/docs/melonjs/Trigger.html#getOpacity"},"8bJj1uFHb2mUZhN6_3CRI":{"uri":"/melonJS/docs/melonjs/Trigger.html#isConvex"},"-DsfB_FhIVQHz9rHsQuwi":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFinite"},"lp_pubpH3wuQwL0qkJj5Q":{"uri":"/melonJS/docs/melonjs/Trigger.html#lookAt"},"BUxMNKKGnYZJT6CExWd6y":{"uri":"/melonJS/docs/melonjs/Trigger.html#onCollision"},"bo6ZzLKy9xaifAoUD_BaK":{"uri":"/melonJS/docs/melonjs/Trigger.html#onDestroyEvent"},"brhe0XsHqMafThRE4EKaq":{"uri":"/melonJS/docs/melonjs/Trigger.html#overlaps"},"Q5wa5UTS95D3_D-NL8qkI":{"uri":"/melonJS/docs/melonjs/Trigger.html#postDraw"},"LC-gKP-Vx1o-Z88tVqLXl":{"uri":"/melonJS/docs/melonjs/Trigger.html#preDraw"},"YM-HIGxFkKqlXQVAUdquT":{"uri":"/melonJS/docs/melonjs/Trigger.html#recalc"},"-VEsKwODSUWVkRde7hOev":{"uri":"/melonJS/docs/melonjs/Trigger.html#resize"},"1MswuRj98NWilZu5saCUz":{"uri":"/melonJS/docs/melonjs/Trigger.html#rotate"},"A7f3xY-bzOVVQbKVc8YAo":{"uri":"/melonJS/docs/melonjs/Trigger.html#scale"},"lkb9FPF1lC_rhPtN6zXXz":{"uri":"/melonJS/docs/melonjs/Trigger.html#scaleV"},"mAqmGT-Gc7Px6CTJeFtTK":{"uri":"/melonJS/docs/melonjs/Trigger.html#setOpacity"},"Vjvji_1ZlY-wJidIM--jl":{"uri":"/melonJS/docs/melonjs/Trigger.html#setShape"},"JwL48X27-1Y5eybTyboL4":{"uri":"/melonJS/docs/melonjs/Trigger.html#setVertices"},"57WqXGIe0WQGFQKwcCeco":{"uri":"/melonJS/docs/melonjs/Trigger.html#shift"},"t035O4NOED6VQXx87xSyc":{"uri":"/melonJS/docs/melonjs/Trigger.html#to2d"},"I-FXM020oo_txi4BoXi1g":{"uri":"/melonJS/docs/melonjs/Trigger.html#toIso"},"MA7CE29VeRwDFQFx_SGTA":{"uri":"/melonJS/docs/melonjs/Trigger.html#toPolygon"},"ASQeHw_kCTW8QjGcElYsQ":{"uri":"/melonJS/docs/melonjs/Trigger.html#transform"},"DbAw-C_wJikcodIxXMWga":{"uri":"/melonJS/docs/melonjs/Trigger.html#translate"},"wq6bVCg3UBNO3CggCQZT6":{"uri":"/melonJS/docs/melonjs/Trigger.html#union"},"eW_tLoBMJdU2FA2F27Izi":{"uri":"/melonJS/docs/melonjs/Trigger.html#update"},"wKoNZBnJB8lVO85e5z1rF":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateBounds"},"hmYjcaenVLRwi7-219TYX":{"uri":"/melonJS/docs/melonjs/Trigger.html#triggerEvent"},"L0CUehi2gGzTzPvF_5U0v":{"uri":"/melonJS/docs/melonjs/Trigger.html#onAnchorUpdate"},"l7F3Ura6YDNemAjGTOu7z":{"uri":"/melonJS/docs/melonjs/Tween.html"},"Jv9ABaUH2d_Xc-YkgHPjn":{"uri":"/melonJS/docs/melonjs/Tween/Easing.html"},"7YWJZG048YQkw2Fz7bMvM":{"uri":"/melonJS/docs/melonjs/Tween/Interpolation.html"},"3ZofCXPNSYUuUn6PC7BC3":{"uri":"/melonJS/docs/melonjs/Tween.html#chain"},"r5EKrndUURdEPSuzQdwyd":{"uri":"/melonJS/docs/melonjs/Tween.html#constructor"},"XcZ1AOysxSDsaN2Ix5ACU":{"uri":"/melonJS/docs/melonjs/Tween.html#delay"},"SFwYf21p2Xmr7OZbxRUvE":{"uri":"/melonJS/docs/melonjs/Tween.html#easing"},"YimU-v-FJr1xN6zlUmfv5":{"uri":"/melonJS/docs/melonjs/Tween.html#interpolation"},"gl3yPfXjx-ahxEgpMZLTM":{"uri":"/melonJS/docs/melonjs/Tween.html#onComplete"},"l9xUDQmJHqbxE8AYZLyO1":{"uri":"/melonJS/docs/melonjs/Tween.html#onStart"},"EnO4e8GVucbKg69Yj7bOm":{"uri":"/melonJS/docs/melonjs/Tween.html#onUpdate"},"iByWRBFlchN189wZlICaL":{"uri":"/melonJS/docs/melonjs/Tween.html#repeat"},"7sbe3lyopR4KeQ56YmAVp":{"uri":"/melonJS/docs/melonjs/Tween.html#start"},"wnhDUcVz7wDZgcUaCQL1V":{"uri":"/melonJS/docs/melonjs/Tween.html#stop"},"6gIgztHcSYnkk2K7qTSbK":{"uri":"/melonJS/docs/melonjs/Tween.html#to"},"mjM8YASCoyQKVzG3JFkSG":{"uri":"/melonJS/docs/melonjs/Tween.html#yoyo"},"pBxbsmZgkCHE6SXfOti5m":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html"},"8ioBGIZ19EzcVxU1Ye-V7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alpha"},"uBgPSwR8wguMjrS-hKqYR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alwaysUpdate"},"zvlVueN1jWmXp-ARfwZEs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#ancestor"},"GtIC0-Bx7fHjS7kZwrSKO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#anchorPoint"},"3GLCr8hJfpZlJeWkZere7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoDepth"},"k9CmKNcq5JuLV-YTZYOhr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoSort"},"YkgM1CvGLsOTpzjFc-u5X":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoTransform"},"hj7gcCA4y9G2X998SGIxy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#backgroundColor"},"j8YXxZmMsFOZmcgxJAy-f":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#blendMode"},"v4JvJR4W90r8EvjaOCMUs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#body"},"2ie4JPL-S1NNfH77woxaz":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#bottom"},"d6mAZew7fXwyYLExK_3kT":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerX"},"qTP1SQ9EqmsJdBpM9Ugr5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerY"},"UjhzMtH2FKQPU7SEqUyMV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clipping"},"k6aSh_0MNAl7owRxyudLt":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#currentTransform"},"n-d3k9ix5pxmxyRvRpoRY":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#depth"},"qMrBhNZ-tkgeGGDsJeh-Z":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#enableChildBoundsUpdate"},"MZgJ9_bITUiG5Cs4ENJQ_":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#floating"},"qy9jB95xDc5kgA2b13yim":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#GUID"},"EvL1H5ca3Uit8ZL_awA7O":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#height"},"F8Ip8y_eoKaNNhrVEykXJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#holdThreshold"},"Z3gT2aMqceEzNoNds-z1G":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hover"},"wq2FSt5_P0mPf6G8n0Djy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#inViewport"},"kVHuU5FlANLOWdu5yjtgs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isClickable"},"r89L1zV2unLeHYFqxxros":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDirty"},"-aCs-O85Qa2O9s6CUugZf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDraggable"},"GvOtSTOo3GMPWPXAwq54j":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedX"},"UK9JTBjnCO2D8jwHXWXA1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedY"},"8QoXHBpxIDVr17yjN2wLV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFloating"},"NzAmrPaAQqWW7aQCWdTpM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isHoldable"},"X8w4Uuvw-Q8NJONUyrx3o":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isKinematic"},"8vTKNL0KRXF6sNE8KlYlb":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isPersistent"},"Gei3EOFYFm00QuTMztaxN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#left"},"2Xx9y6cMkJYW3SUsMNDzH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#mask"},"iADVCxNloI37tUdVe0TRZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#name"},"kXaiOBR5un_OvvhLYo3cx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onVisibilityChange"},"_FZha4Z9t3Y3uSRJwhosL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#points"},"SoLhV9fzrMwwsEBTmNiCS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#pos"},"vGYmahcOo7R1iTijmJleg":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#released"},"uAfM8h_3oCDUsA61E5sRa":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#right"},"F1t7DtyVztb8ilHLVkvh1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#root"},"VLfPIszrf7xT6K-haKkD6":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shader"},"aef-sKQ26XQSNrBQS7ro7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sortOn"},"B3r4VtyZW8gbmshPG94RA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#tint"},"ZcYfrpzDvAmlN6lZwBMqs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#top"},"vZ6tc_oiem_XbtUAa4mAA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#type"},"VbhsjP03xBu98rtWZEZnu":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateWhenPaused"},"TY0nzkfpmdWGkx4xCg_yA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#width"},"rJDwYGrQ4qyzpJYa8M0AW":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChild"},"meR9yy5QUjs0Zmj1XFWoS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChildAt"},"IdkZwdgjOvUNVFvV0VoXZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#angleTo"},"uapSOLLX3NzBE4w07SC2g":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerOn"},"CNe-Pl4_HZCR_ENHRnUUc":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clone"},"YGyHlV01kd3nAQLb2JM98":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#constructor"},"rAxlJ8BbMboL_R_lcgzkv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#contains"},"dayHOcvVzqpQ0lAS-ACvV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#copy"},"Lz_XtWwVLm_Fqkl2SEfRY":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#distanceTo"},"NGtq_YagFjrktWu8NuHoM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#equals"},"BTgPgPbLUzyaor3R6w0Bs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipX"},"7o7AN0wQIpjSWKuPSKKmO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipY"},"JnJg7qXveC_0HOJvVempT":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#forEach"},"2jYjAi3voJU2S3-lTeVpx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getAbsolutePosition"},"syWjDS9W5XbaUsbYEJYaN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getBounds"},"GlQy6jeysK_lP5xn2XuKH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildAt"},"m4a2NCpp3maKeE8A79ByJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByGUID"},"P4o667dAqTCmk2GfWoGBB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByName"},"FP_tEbtl_TFT9wN8pTyk-":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByProp"},"VozxslDCEN1iAP592Zh6M":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByType"},"5nlwr8Y_WqOjjTaACwrqo":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildIndex"},"P9dwPUVZu4VAlir9oOIin":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildren"},"NY67ODQ_4BUkBWxUjV-7N":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getIndices"},"2tvQbRwY1JSPj32dBs4V3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getNextChild"},"2mud4ZX0ZthN9hlN4J0G8":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getOpacity"},"sG0MovQXCDe7Ezojzc-NN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getRootAncestor"},"wTx6QLr-UOgCYMzd43LDf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hasChild"},"tV2exvO9xISTkIZ8fefOm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isAttachedToRoot"},"xbpgMOm4qlY01a4KjgQ8f":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isConvex"},"ogPYP9MemZ2CbihMkMkk9":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFinite"},"zEfiMJgacB_n2M3kZBz-l":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#lookAt"},"flAPBPc_zfF8P_lXyxyGh":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveDown"},"WLZLKBInUstycXTT-xWuC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToBottom"},"FXWt2uNFovmEhryTE3qpv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToTop"},"XY6LZPUEcDarVz1eNhFfP":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveUp"},"gKsKqScTTsb98mhLbsJuA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onChildChange"},"9aZvvx14EjjOyzWUarg8C":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onClick"},"icfDDJ84c3Cdkn3EWxRet":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onCollision"},"VL4t-8V8Mfy90H7FFydS1":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onDestroyEvent"},"acqeWvKIIBJvQfjmOps_j":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onHold"},"NdsnMbJj4PLOXXUxgb1qI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onMove"},"93SfTrhsgJF6yb2PCcKrV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOut"},"T5ff_0PQp9Mxw7SVCMrIy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOver"},"mEbawVfR2l1GY5mLVyp1p":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onRelease"},"00Rz2WIk_v0wAOZOdqMO4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#overlaps"},"Ff5gmNLq_bu0a__bwzLsx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#postDraw"},"FKTRrhpVaEV_HLEpgzNgj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#preDraw"},"aQQXeHlSTy4Lxbu7y9aQa":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#recalc"},"XCVGHycvtzZUzVWmR0oOR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChild"},"P0NOm3O2SyBVuR7YorQxP":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChildNow"},"czcZ-DMZpQiW_2ALWtSjV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#reset"},"E8NzpqlQwsoDn0XpnJflr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#resize"},"8Zm0T4lTfJ34yS21rM1wm":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#rotate"},"v97fgGrjMtG8ulsSXR8zM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scale"},"BgE4AWW4BniWNn0FUh0Ra":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scaleV"},"mLPIx0Duu25zsZvlb2VQI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setChildsProperty"},"gkZbwONA0cUdb7k_fx0Cw":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setOpacity"},"NMwG8GDfR7oF8_WvJYUwq":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setShape"},"k7bZxjSBwMCUB_7C-a69S":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setVertices"},"g1yunionHHOeK73I29WDH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shift"},"iHkalzZxdMohvs-8AFEVB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sort"},"IbSaIi1aSAEM4fuO79NdV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#swapChildren"},"zvI3JDPOr2PjSUFn9HO67":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#to2d"},"AgaiLKJeKIfdUmSJT_24E":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toIso"},"keTvkLCY2yWXODmZUCRUW":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toPolygon"},"RBcDrzIfb_Sg-RwtXCW-5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#transform"},"1UMKro2E6UrY2xb2gtMJ6":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#translate"},"x0P4zEZjegputwUP-Flqi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#union"},"UhjetAa_TQ6Fp8QppQ2lH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateBounds"},"C8cPnCIiY392lFn0GOB2F":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#draw"},"XsK1DDKcJdZI9KcEoBah8":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#update"},"0WKD4NB_jDOm6q3eFWWmN":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onAnchorUpdate"},"nx8X_OzpGqteKl-BHn3ZN":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html"},"_rMezdhiB8VlN58qyrPC0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alpha"},"BS4i98zfQkOZN0p8GrG0v":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alwaysUpdate"},"205kI3fGiqsdu2kjwws3n":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#ancestor"},"cxag1emxMJ7SFkSQrWkb1":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#anchorPoint"},"0Z3r4ahzbSyDQvHgWXWCt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationpause"},"UgobldpgkWQxuuEuaU0-R":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationspeed"},"i3kZyBKS5uDXakAwtNVgy":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#autoTransform"},"OGBHnQRVEuJdC5Nl9fEbv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#blendMode"},"7jh5zZg5nZI4cCg1gRZQh":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#body"},"t2YSrBdBBnfbrbAugP7i4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#bottom"},"tJCZWgEQ_MBLY1KvMUl8h":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerX"},"-iKhquL65XlqdEi-wYRol":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerY"},"hTFsRX2mvqNLDrYKBgCDJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#currentTransform"},"YbP47AfbJyGDOj7FgM2K_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#depth"},"tFcMin0kMvnpBJJ9kq5FB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#floating"},"MkjCtIVniwC1EQqcuN_8P":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#GUID"},"QIIw9C6_d-KNG33KZURNi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#height"},"i1q-wGq3ayHJtwTYEGiTO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#holdThreshold"},"sQR9E5IHBq9eNnv2_zXZN":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#hover"},"h37J6LA_x5nZG4yjbNkGR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#inViewport"},"d4JxM0isIEGsBxZpKrM5h":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isClickable"},"PNAgVvgy5-Ur0oWj0q4FB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isDirty"},"kQBce9cezdk1qiFMFik42":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedX"},"_RrqqZePnbrkTD3PTXTgd":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedY"},"ms_K6sYYE_ynnatdO1h-W":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFloating"},"JtCSSEXnSR9HbB7EyoMUG":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isHoldable"},"pQtPDMtLJHXFFGaQpf7-F":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isKinematic"},"B4VC5aeUOYgfBW-YrHRZO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isPersistent"},"prSFMBMObcGL7ss6lWs1v":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#left"},"BCcmgCBZQ9RTSchXen6Vx":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#mask"},"Sxu2NV8WiWSlInG0ENbAW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#name"},"7dTX07jgtes0p1I0eXy6g":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#offset"},"ormAuS23MwbEIhFZXDVVP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onVisibilityChange"},"uwjgmT9KavrYFNq0dkzUg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#points"},"1WKDSGDxk06GRgc2iTD4S":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pos"},"q9OUomC_HmlQR__i8vs9L":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#right"},"MPB2SZYpjHbO4MsXIqbBp":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shader"},"Wkf53w-MsVTu0fXZAMtCQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#source"},"QPoxq85HayRT-JwtHhvHt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#tint"},"O2c70fxNdr-rnsTU0_W6r":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#top"},"hjO-l28AhKtu5EgiyLaLS":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#type"},"_NMAqahxg_GTzEroplOv3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateWhenPaused"},"A5lm5GQRT6ANQZ7_BP9M_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#width"},"MXmhyb69S6tYQW7WAdxhs":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#addAnimation"},"fIYFZMQOFaJCgd-c4e_0-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#angleTo"},"ljBB7-ti9GC08-e2BIW8a":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerOn"},"VRCF1qUnPGfzc4pjiDPH1":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#clone"},"2-KY8yV8fWvVT6WI25Cjg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#constructor"},"LA8gQuviJJFN2j4NZ9hOw":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#contains"},"Ukoe8irLS2mHusDel2a3w":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#copy"},"l0KV3kLjbMKBRPOyQybiI":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#distanceTo"},"sbX2Uq2xqyCnYKpmfPvJX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#equals"},"7gbdHVKiOoXa1W2qcbSrg":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flicker"},"_8W_NeF0AAWpfKVA5HQQF":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipX"},"P9oFWE2BhVLUzPDh66ht3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipY"},"OxCMzlXxlNn6pzFDP1Ggl":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getAbsolutePosition"},"4cecW_gCk_GTDSTpLr_j3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getBounds"},"UStfOkrIBtkLMun7u4Xyj":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getCurrentAnimationFrame"},"Fag9luQpyohvfpI3nrgcG":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getIndices"},"NjuiJ8updU-brSwP_w_Ea":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getOpacity"},"YUzvp3ID9XkCN4IQw-G9Z":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isConvex"},"cfntu1s5Alwt9-k7fmKll":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isCurrentAnimation"},"dZ3yT37I4Y7gHbHKtM0xc":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFinite"},"Fm58zvLG0XjSOB5yZqT3r":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlickering"},"lcVTY2752joFu95HuR982":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#lookAt"},"1JyCNMjZEWzLeLuTbnA1a":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onClick"},"yZZX5xaBIzq_I3kOEdsI8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onCollision"},"KJadK8qL2Uq1caQo22vs6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onDestroyEvent"},"TPe6izFMaOaOXcu0RJfrX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onHold"},"qYMj36VoNkrOof-KSC80v":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOut"},"piMvKGMJGxtY58ScvB5fv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOver"},"no-G4iRLpaXla_W-al37d":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onRelease"},"H3zaGqAGZasNz77vQNtqT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#overlaps"},"CkRZ0rIQ9nXdn7cLT0nW0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#postDraw"},"uQtuUrJEJ_62L_Nznb3fX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#preDraw"},"gZ7qan-p-BT32PEUIS6rq":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#recalc"},"mNleIidADh9C6yTlOKULX":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#resize"},"_NW-cgpC2L0h_l0Lm88F7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#reverseAnimation"},"YN9xWSfDb769GqJveZSfV":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#rotate"},"CvXqXuuhOcmOCp9R6s2GD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scale"},"TcBasmXKwaIIe5pmKJ0u1":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scaleV"},"Id-i78mHZE3TyFsmR9P6z":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setAnimationFrame"},"TZ-qAgiz3hcuR89PRJEw2":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setCurrentAnimation"},"Fadkrz3k92idusOOZ5LhU":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setOpacity"},"8sxwx3I7YlAFTllXMzQHn":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setRegion"},"wbcmavFHA08ZADebn82M0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setShape"},"uKnZhNfnwgE65iMScFRpQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setVertices"},"6kcwuFKLTlw_R0T6R--7F":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shift"},"CjrH7HOE_KczwCiLqtJkD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#to2d"},"hEanJEtMQ3ivjm4uRcEF3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toIso"},"eHn7f6YrwjB74L10vSvTz":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toPolygon"},"5XwfSY5gs-TW9U-L7-sfy":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#transform"},"2qk73qwP6MjqHGOnF72qp":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#translate"},"fiWD2SSPiq-hO9fBuJF5q":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#union"},"bqJQTFHpoBP6IX8cayzRV":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateBounds"},"p4Ks0TOuceJw273W3HtEA":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#draw"},"Pa6EhXB4RzvwpDW5jBE9x":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#update"},"FF3fGvHr7GxJFxp0gw2nN":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onAnchorUpdate"},"xV9D3eEDVjv5BLNy3Fwbj":{"uri":"/melonJS/docs/melonjs/UITextButton.html"},"MJIppnuKrNsQcdq3xDHmw":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alpha"},"k7HAKc45CtqisiL1gmv5W":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alwaysUpdate"},"YTzsQmcRnfgSqRQlV0Izb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#ancestor"},"gL3TR9JR3eYwK5BH-Nrc-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#anchorPoint"},"v8nUvmvtdOL6lHvCyR8pN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoDepth"},"hIAJwBK9WlUHGEXpjyFNM":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoSort"},"EpgpsHjW1jeYfVDnxOUBI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoTransform"},"rdH-4y_Gmj6xjQ9Y4JqM8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#backgroundColor"},"ICK8Y9XZiVj_qLeTm5Lpy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bindKey"},"3IN4b6zu4wwUha4-H_5p0":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bitmapText"},"tuY0KkZEfYAHozO1f_-Qz":{"uri":"/melonJS/docs/melonjs/UITextButton.html#blendMode"},"8SHlyIMZub6wh73NFdrTB":{"uri":"/melonJS/docs/melonjs/UITextButton.html#body"},"4E-jynRSZCP0JJmoKgj4M":{"uri":"/melonJS/docs/melonjs/UITextButton.html#borderStrokeColor"},"EUtI9i12xCixJo2OTW1IY":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bottom"},"xm5hF6Irz0-VIb5_MFjlA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerX"},"6b90PkEI67siVSR4dmltF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerY"},"koS7HgByKjAt90E0k5Lds":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clipping"},"82SHtLyKxZAt960hHhbc9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#currentTransform"},"Sfw4viCdhbB4zRKv4jr91":{"uri":"/melonJS/docs/melonjs/UITextButton.html#depth"},"l7zqWgMpFMzWT8jhP7mNd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#enableChildBoundsUpdate"},"mIEnj8A5QMdJVxaK6N86U":{"uri":"/melonJS/docs/melonjs/UITextButton.html#floating"},"YNYsL-4Om8jgRaCnP_yA-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#GUID"},"iAwahQB5-Nkk-FhZz0lzo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#height"},"M3c-ZxIRDhvw7P3ICJO5i":{"uri":"/melonJS/docs/melonjs/UITextButton.html#holdThreshold"},"8wp7JYtzbFnqAMcM9ahWt":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hover"},"Dp9ULK0EotBf9aqr961ku":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverColor"},"2QRiPec8DIsF8dTV4_RRN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#inViewport"},"oj70dMhrtXE3q64LerccD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isClickable"},"oAJl2TXFLlHCBLpjReiS2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDirty"},"57XyiLd5sJMa0egRhmIJE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDraggable"},"4p533Qw3J1r-wS-vBkm-1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedX"},"_4UJVezn-t1rswHdRB6O6":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedY"},"AjuMNYVyWHhe9zJl_s4vP":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFloating"},"S78GRxf5w-y8WSKrsuYCe":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isHoldable"},"pMkcdfJVZflzww6lFdsMq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isKinematic"},"vm75u4xOA7khyAv6wtWN4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isPersistent"},"7L7U59RN4co4gH8x9CqNL":{"uri":"/melonJS/docs/melonjs/UITextButton.html#left"},"Twc_-kjpcHzMU1hYbp5bI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#mask"},"X0tFsAiFRPeynTg0QMVwa":{"uri":"/melonJS/docs/melonjs/UITextButton.html#name"},"b_qHQax36M7f5V7nm9638":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onVisibilityChange"},"TI2GDAKEGVOPh_p1IJMLf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#points"},"6A7IfQoVL1qfNSbtafRGj":{"uri":"/melonJS/docs/melonjs/UITextButton.html#pos"},"NxDCR8hfau7TtWEwKjojr":{"uri":"/melonJS/docs/melonjs/UITextButton.html#released"},"4ei2lPMLxU-XG_150S8Lo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#right"},"OAAG0U2s4fr6tiLvYEBGx":{"uri":"/melonJS/docs/melonjs/UITextButton.html#root"},"FxB2NHlumlxSQXvn83sw1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shader"},"m_zsNLliC8GQmLwT-ICZl":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sortOn"},"9ao_N15UQWfY57pDt0VUS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textAlign"},"7kdGi-dXFe-ePm01Ary3F":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textBaseline"},"cxjap2ZvnXnYpsc8HSADp":{"uri":"/melonJS/docs/melonjs/UITextButton.html#tint"},"cpHdtnAPGDxA1AGD1o42Y":{"uri":"/melonJS/docs/melonjs/UITextButton.html#top"},"HGTS4gq_M1N2rDE0iotDt":{"uri":"/melonJS/docs/melonjs/UITextButton.html#type"},"CjdqyAnYNcUEfdPy6gCAN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateWhenPaused"},"i572LkbovquhDMMNj78uo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#width"},"UclrMKmdoPStlrSQ_0O1m":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChild"},"NzrNl3k2At0BqpJ8DFkz2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChildAt"},"2OV1VxSnv_lWfTaKjb43P":{"uri":"/melonJS/docs/melonjs/UITextButton.html#angleTo"},"KItvYQFVuKAwvsTP_eUYl":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerOn"},"Kz3eK1UepkzzNGRY-IWsq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clone"},"z32UbfOyu94jI3fMtMNQd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#constructor"},"CJqmE-TQiI-uC_diBzjB9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#contains"},"ui7uy3caqtoUhV7Eu2ANV":{"uri":"/melonJS/docs/melonjs/UITextButton.html#copy"},"5_LAY3MF648rdeDtxDga8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#distanceTo"},"2lLEPvtHBfOXLWOV25BGo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#equals"},"Ef5nrRHX979xlkSkq0ghn":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipX"},"56cLrfEMRY4u02NIRF-Hx":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipY"},"EkfBJdrYKPYJcbuEyTSkx":{"uri":"/melonJS/docs/melonjs/UITextButton.html#forEach"},"M0hb1L_ZzNvRYfBdQBW4L":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getAbsolutePosition"},"jy1_3m2RX4pb_X85LVuHN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getBounds"},"mHgf_qGETSuXmHekE0IUL":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildAt"},"jG7LLP2gjGX4j1RnA0aKn":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByGUID"},"uYY09k_kaWzNeBMkON5OS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByName"},"eK8cc9AfBV7ju5godIdpK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByProp"},"TjylfQolzLxFiPGh8fA6G":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByType"},"_8ct2wgdDdb1knKZz8gCb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildIndex"},"A3GJ9avy2UMs0-mHzLq_U":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildren"},"JaOR0WyZxb0G-8PqxZnGp":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getIndices"},"R3XdP6WefcyrumR7A7cEG":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getNextChild"},"h44pD2-XPfLDNJRfjfrkG":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getOpacity"},"YNYBpt5gKcYJf85K5LR0B":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getRootAncestor"},"vIMXjFl096bhBl54KGcye":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hasChild"},"LrFA7GEBsRjAlh-4t8ozF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isAttachedToRoot"},"z2_4iXtiQAu3ZHoU3CCEk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isConvex"},"mcyDotbfejMQbck_UO5R7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFinite"},"LkyShekbV0CA1GNwWYHco":{"uri":"/melonJS/docs/melonjs/UITextButton.html#lookAt"},"9Q08pcisY436iOQLBgpgk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveDown"},"6-D2cxa3c0p3b9IS54IqD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToBottom"},"oK7GN704USdGDQIbkM61Y":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToTop"},"bmJw_CQm5j8v3j1SpY5U9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveUp"},"Ukwot-VgxtZ6YoKxXzXHG":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onChildChange"},"ntSUtvRVu5LBoW5UB32Ch":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onClick"},"ygs16HZOk29gDV32Vo2Ud":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onCollision"},"hyQ1VeTuRHdetUdeh8_EN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onDestroyEvent"},"PJ3DjUfzWGvrDCFPtyzmK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onHold"},"dGB_QGBb3VC2PqU4Tq6FF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onMove"},"swaorio7isb4ktYpRE6Ic":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOut"},"uWfqz82CR2DmIYtPLHRag":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOver"},"0cXyFCXsDSlCxI5ttSmr_":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onRelease"},"vVzy-_gk35njm9kWD4xgN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#overlaps"},"LxMIOVv_zLo0m4bVVmTzC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#postDraw"},"B-OFLhQjE_staXANaLJG4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#preDraw"},"uZ86HjeAOFRzLNM5Z-9uJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#recalc"},"lhz5lXh8OfX1DJLlxKj3n":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChild"},"Y6LsQfcLqOcjHENkT6-gN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChildNow"},"aL71KdqQzWLCwzqDTMY27":{"uri":"/melonJS/docs/melonjs/UITextButton.html#reset"},"uJ0HzyMFD0NwcQgNrVpgI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#resize"},"QVlFj-bPxNoTU77JUzWvO":{"uri":"/melonJS/docs/melonjs/UITextButton.html#rotate"},"Whg-uj9F4qmvazKhTETql":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scale"},"bOuwuJ4UE96dOqkvLqUko":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scaleV"},"nzypPTLvbg_V58gVhdmUi":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setChildsProperty"},"LZnoLiEnGhhmAW-tQXmzg":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setOpacity"},"FUGRYISf6up6GhdHgs9U4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setShape"},"iCHhjNenK4JJYFNpksvaN":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setVertices"},"n2xK1zXDK1bQpIdmV90xI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shift"},"eJXT7DR-8ea_qLz1b3FTS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sort"},"-e7DR6Rzi0p5KE-qSsNGd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#swapChildren"},"RaAQUfm9yXmY7SazCxXPv":{"uri":"/melonJS/docs/melonjs/UITextButton.html#to2d"},"ZV5KmMXkJ3fRYpmpAeOHZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toIso"},"l5wGm0iqYrr2NrBONkMFg":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toPolygon"},"v_bBvkV1gb0hdFjZcclPi":{"uri":"/melonJS/docs/melonjs/UITextButton.html#transform"},"AlegZ8o7ucjT-C4XjU5YS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#translate"},"-4N9JiDJrEipFjFi_1O2Y":{"uri":"/melonJS/docs/melonjs/UITextButton.html#union"},"RI9BEHQrqmccRbFLZbBr7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateBounds"},"w0zvGvKp8wznTxcpxGKOF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#draw"},"coOSFHo2ouwf_JrIBPjMB":{"uri":"/melonJS/docs/melonjs/UITextButton.html#update"},"jnbLhyihDvYYS5n8LUxxo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onAnchorUpdate"},"FdgclKm2dd6eT1PQHjgAb":{"uri":"/melonJS/docs/melonjs/Vector2d.html"},"nzrFjUl8hMzN1VnksHeOq":{"uri":"/melonJS/docs/melonjs/Vector2d.html#x"},"yodBaGYr8Shd3oabRK5PQ":{"uri":"/melonJS/docs/melonjs/Vector2d.html#y"},"PoEfBo9d9S7Ro-A3l8SfO":{"uri":"/melonJS/docs/melonjs/Vector2d.html#abs"},"rVkTeKhOZgMUhDVzlx_yP":{"uri":"/melonJS/docs/melonjs/Vector2d.html#add"},"Y3MqmQpzFxmKGT9UJ-1Nk":{"uri":"/melonJS/docs/melonjs/Vector2d.html#angle"},"E2EbHRW5sIrJdSKB-l2Jl":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceil"},"Pn7xjR7MQXoWmbk-xx_yx":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceilSelf"},"IMN21oPFm35_tzvuhfl3N":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clamp"},"UQTTIAPHyMpcatgsVCPg7":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clampSelf"},"JQypSSVx25NwchAuK-iW1":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clone"},"3Txw8xvGTsYxRzwdTtR0-":{"uri":"/melonJS/docs/melonjs/Vector2d.html#constructor"},"yeSSzSAoVnSqXnBDkXszf":{"uri":"/melonJS/docs/melonjs/Vector2d.html#copy"},"bWH-VgM61afHcjI-1k8he":{"uri":"/melonJS/docs/melonjs/Vector2d.html#cross"},"qau-rxYaI7THu4hVCbtuY":{"uri":"/melonJS/docs/melonjs/Vector2d.html#distance"},"K9Jhb3NpAx5JE0eMzFhIy":{"uri":"/melonJS/docs/melonjs/Vector2d.html#div"},"9rM-FZFwMPGfL1mWez0RO":{"uri":"/melonJS/docs/melonjs/Vector2d.html#dot"},"umKZvs4OE_zVWbgVAcJCk":{"uri":"/melonJS/docs/melonjs/Vector2d.html#equals"},"hVPabLn11ZMRCkPBo7wfM":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floor"},"Wb07HPwZQrizQr2XkuAy3":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floorSelf"},"WYUvr2sGJG91DzwWHQMdz":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length"},"IwFrEGiJI0O-r57Ox30qi":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length2"},"m-2c5_NGnUWLYGp0QS6Gt":{"uri":"/melonJS/docs/melonjs/Vector2d.html#lerp"},"LJ8xFlMQiDkc_HdBp0Xn4":{"uri":"/melonJS/docs/melonjs/Vector2d.html#maxV"},"HFjaV0YCH3hK9Svl7xC3r":{"uri":"/melonJS/docs/melonjs/Vector2d.html#minV"},"tIbFbl_L8MPOF75awcGGG":{"uri":"/melonJS/docs/melonjs/Vector2d.html#moveTowards"},"UJMxHTsbVVKp_nppvqYq_":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negate"},"kJybWkrDEyYVQ8APnlcgH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negateSelf"},"g8BtHSyMJPFr4Oh4GocLn":{"uri":"/melonJS/docs/melonjs/Vector2d.html#normalize"},"xcu0zK9o0OduXcsZGYTJ6":{"uri":"/melonJS/docs/melonjs/Vector2d.html#perp"},"kC8IwzcNh4lQLZc5g4VyH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#project"},"am4S7qMQA4ppah4A5_saz":{"uri":"/melonJS/docs/melonjs/Vector2d.html#projectN"},"ASSyzo1NEGRxzmiN6-GGa":{"uri":"/melonJS/docs/melonjs/Vector2d.html#rotate"},"ENf7jgVLFjoeTq_UCeRY3":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scale"},"iSWAJqnen1cDuGy1rBDKT":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scaleV"},"QVOKAn0ZXWWgwj1zhhC-T":{"uri":"/melonJS/docs/melonjs/Vector2d.html#set"},"3UwlvAo-ENHWyYJVzbv3o":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setV"},"ie-c0PAfbcOO_Wb7TDsE2":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setZero"},"d3JJhzumgSKjkS75x46z0":{"uri":"/melonJS/docs/melonjs/Vector2d.html#sub"},"OKn3LlVe0GmLMt0tob3sr":{"uri":"/melonJS/docs/melonjs/Vector2d.html#to2d"},"FkXYLW-PH6-Vmk50K6N-Z":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toIso"},"sWNmX-eJ-iQaxFqD0ejAq":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toString"},"oClnRNRhnxF-8E_H_O08K":{"uri":"/melonJS/docs/melonjs/Vector3d.html"},"60gRFo9NI1DHdhvU9XV1-":{"uri":"/melonJS/docs/melonjs/Vector3d.html#x"},"x1QGEIWhMMimkqgGuAadM":{"uri":"/melonJS/docs/melonjs/Vector3d.html#y"},"qEF1bIgWa-z91Ff94Ynxe":{"uri":"/melonJS/docs/melonjs/Vector3d.html#z"},"Q8NY-LLwcsWSiuquQ4Ns9":{"uri":"/melonJS/docs/melonjs/Vector3d.html#abs"},"SOpAWvl3Ygx1VKU2H1-oB":{"uri":"/melonJS/docs/melonjs/Vector3d.html#add"},"XofM5T_ArkGaW4ygmjLSR":{"uri":"/melonJS/docs/melonjs/Vector3d.html#angle"},"RqsNYbrPHfoY6vf7f2mCz":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceil"},"pKkD4VQg3mctEpCxp3xkI":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceilSelf"},"_NbuSTb1xmgN3DISYjpSN":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clamp"},"1YpZggNzOhDS79BvfJ_FN":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clampSelf"},"hqJQwxlx01-qOdsiEb4wc":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clone"},"EbtcFlnRzanVjAYRDrlRy":{"uri":"/melonJS/docs/melonjs/Vector3d.html#constructor"},"ibV1ipPf2l3LjuqgEkApT":{"uri":"/melonJS/docs/melonjs/Vector3d.html#copy"},"x86OtN-IbhgqTqSIFNfwJ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#cross"},"moiJvtqmUJlEfwq4FWsPa":{"uri":"/melonJS/docs/melonjs/Vector3d.html#distance"},"JKhyiI1zQWJTki-83Wn16":{"uri":"/melonJS/docs/melonjs/Vector3d.html#div"},"VU92VQy15mRucOk83XwnH":{"uri":"/melonJS/docs/melonjs/Vector3d.html#dot"},"UyTBHXM5drxvWn_tXnnwv":{"uri":"/melonJS/docs/melonjs/Vector3d.html#equals"},"LRbPmHea0jUmI5nHiEG1m":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floor"},"v_z3rVW4TpD7uJ4lclsLH":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floorSelf"},"Ti9lluUHB2C9IwbwYkB3l":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length"},"SyAic-ioN-SxCkIc7iO9k":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length2"},"1Kh2grbU9MAC5QjEVjDyQ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#lerp"},"vCrBPOarJvzEPOJJ6nwdI":{"uri":"/melonJS/docs/melonjs/Vector3d.html#maxV"},"LmqfJN8JyGh1JOSaaaXkK":{"uri":"/melonJS/docs/melonjs/Vector3d.html#minV"},"TbPiY4W1BhgLpsrlrB3qA":{"uri":"/melonJS/docs/melonjs/Vector3d.html#moveTowards"},"c6RMel0W0E_NVGKt9LcH0":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negate"},"D1ngqk7wQVb6x9C2zzwoJ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negateSelf"},"_Fe2v-r6RdhNqBnihkk_T":{"uri":"/melonJS/docs/melonjs/Vector3d.html#normalize"},"olr1VQARWIG2Z7albNAOo":{"uri":"/melonJS/docs/melonjs/Vector3d.html#perp"},"DVTO5DICsp8TapkZDE2BP":{"uri":"/melonJS/docs/melonjs/Vector3d.html#project"},"oGzESZHDVNLzD0SpBHbCs":{"uri":"/melonJS/docs/melonjs/Vector3d.html#projectN"},"Jc4Z1rjH3l7k7sZIZBuTz":{"uri":"/melonJS/docs/melonjs/Vector3d.html#rotate"},"d5qO9pphoHG0VzZkAHgMq":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scale"},"CUo9mDHth-Wwo50AphkMH":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scaleV"},"v04s_eNj59N107Qh10iiI":{"uri":"/melonJS/docs/melonjs/Vector3d.html#set"},"Nh1MFMhFhQBfCSFya9QSE":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setV"},"2Q3vjJIbApR8ZBZMy3_FE":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setZero"},"ljgzJRpXjpgozKa7Iw8ax":{"uri":"/melonJS/docs/melonjs/Vector3d.html#sub"},"dG27tqnHzAr9PvaMSkX_V":{"uri":"/melonJS/docs/melonjs/Vector3d.html#to2d"},"D0mJijjRJPGtKPQFmNuow":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toIso"},"w1Yggs_Z2qEA-AjcuGAYP":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toString"},"nJJO5VcQL1VNPJG1EE1PN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html"},"rSZ3pIIu3QObKt_FPuMea":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#compositors"},"dkXODF-MN9D4BnpkJWwTt":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentCompositor"},"l9F3A9UX1KcA5cxLO0l2l":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentProgram"},"BdvROG-khkG-MmiqnyzMg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentTransform"},"L69l5CC5o1lel1Kjy_Qwk":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#depthTest"},"o3a6geto-hUugkGpVHSYl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#designRatio"},"5wplLljz11JHD_M_6AvDl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#gl"},"XJyEhu_mwn7Fa5etS9pYi":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPURenderer"},"2fPVdjLpKrRjlNDvPplFl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPUVendor"},"dhfrsNEXLFSn_781k-FOP":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#height"},"FBqfzN2sk0d_EBeIW8tcq":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#isContextValid"},"ie_V1CzSHAgsEsbnWjxTR":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#maxTextures"},"Q9IsskDUtgwmRP3575oar":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#path2D"},"79XRK21RIZMcz-dUdgCkH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scaleRatio"},"T8GBXnjPfJ4fWEKn_JFeH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#settings"},"ILRPyUYgC66JWgFTsZxVP":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#type"},"YMZoT8fZkZQb65fsTFcu2":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#vertexBuffer"},"RyYYIZnEOSjP3UHHwy5KV":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#WebGLVersion"},"4F5TSRnE74plEUU7JoefE":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#width"},"92y_1Yt7mJfe2nLoxlZj_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#addCompositor"},"IaZXUAPmqgHs61wbV6SPs":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#beginPath"},"EeO108IG17GmxSDG6dpfp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clear"},"wfYLIwpulpKAD7WDeiq4o":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearColor"},"1WeVitYbXkSw56Ojx2Hyp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearMask"},"WClBT9Add3GBwzqOa-EJj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearRect"},"bh9amYprluVbpLWxJAauS":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearTint"},"o98OwgfF0cLABuW1fgn7f":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clipRect"},"syMJgkACK_DNrHP7j3tky":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#closePath"},"4FR7bOexgnjoRgOVR2RlG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#constructor"},"jwojyD0pOR2ufBaeqzEPa":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#createPattern"},"etYPcUKVmoAIpe7ECvLsT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawImage"},"QFbzCRwAdp6fW7O4MRBT-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawPattern"},"9PBIbCayfiYvaJP-fqGJH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fill"},"0Xmxk6W1-KbVLqcjAWv51":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillArc"},"tbHi-33gNmPPQToippQVo":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillEllipse"},"BOuFvliYpldm1LiS0L9T5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillLine"},"EwkgmQVV4Lsrlem2uijNu":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPoint"},"2CJC_FBphzt2xZspxlB6j":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPolygon"},"Cmq2bHHRfdYfkkxc0FYAM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRect"},"rqdGJUFX5eO5AblPFnJR_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRoundRect"},"q-7ebAxXZAw1VH4OjbEoN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#flush"},"gFCVBzafArbDTjb2Aw8YQ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getBlendMode"},"HHPPM71jHDXDE-jJbhsig":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getCanvas"},"U_vzB19QQ7QmNqVV9NvM6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getColor"},"7uyceznmrAw5qc-uQaOHy":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext"},"h7CKm_1SvaVWHG84Yp00S":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext2d"},"DXHxRpFh8Zzed3i23m7LZ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContextGL"},"AJ5XQNBmOmBca6FfNFK7Z":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getGlobalAlpha"},"upRClkmicVhGagYEPDZtY":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenCanvas"},"58ESi6mgnHDoTSVffMwBz":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenContext"},"Sa8sfgifHJGjxgP-Z9xFk":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#globalAlpha"},"pBk_IDKnNtazlO3eiU26s":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#lineTo"},"szkCgh6eys7kRB0LNvR2E":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#moveTo"},"XAYWljy4am676yvSyGFbC":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#overlaps"},"X-Ah8HevFgC4OgA4So4qm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rect"},"7FgqKiskvsPxGwjpsalAe":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#reset"},"rsJaL8OpkkVg7nDoZeZZ_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resetTransform"},"FpkFaf7WyfVFQOOnkPYH6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resize"},"cwL1P7pRWyfwbuyaF8361":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#restore"},"8utv-vos4DfShzkUff5jV":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rotate"},"lPv_xoub2seerzeMkudQP":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#roundRect"},"T2D3v6gufP-M3pYq640Or":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#save"},"e-_DOuEnBAeUbARHCK8eB":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scale"},"wMV8cg-ZREkieJsX_tZDR":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setAntiAlias"},"pqrFD8kv0CkBJnC14Uuxb":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setBlendMode"},"sOQkf1fbmb3967VnNEF4i":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setColor"},"jAkAgMEuw13lJXhKlymoG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setCompositor"},"KEnWcWfVm95FI1HXL9pNF":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setGlobalAlpha"},"DaexTKgg57DRzpkvNm9x5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setLineWidth"},"GsUaHqNGXL6GtorfPNv9A":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setMask"},"TXcgV7wQcGyoSLha8Nl6-":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setProjection"},"eEFL9xpbPIx276YvCdHCA":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTint"},"YpxB1fe4W6nWtgeCGjYPm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTransform"},"EXa2h46hDAJXAylzUM7t_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setViewport"},"iX5nBYEOZC9vovDMkziqr":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#stroke"},"8F3eD-QFlxs3T4pdFnVhL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeArc"},"nwGFCEQAuiCy6RXdS4gw4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeEllipse"},"G_ROjEc3bsNCcfiajrW-q":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeLine"},"76R-CEX3Suuelq-M3krrG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePoint"},"1fWkuFCaIQitzXFgdgk0B":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePolygon"},"ZRKThwQ8yb8dvniCoADUW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRect"},"cbQYG2ycP42cjaUFPL4cs":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRoundRect"},"nhjOyV1q3a6F-FABjhZnM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#tint"},"Z68bXtd6q8CVyCI657VFu":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toBlob"},"wONGLmUqy3_zwINXsVugO":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toDataURL"},"uNOqLPN7o0jHgFdh9r64f":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toImageBitmap"},"ia9Gs-Uc3pSq8CE1_BY0G":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#transform"},"30pEG9bV_gDUpJPYxGh7R":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#translate"},"u73bz_GK9K4GjBinqqXcQ":{"uri":"/melonJS/docs/melonjs/World.html"},"5DtMTXvBXRjt6fwAGqd5x":{"uri":"/melonJS/docs/melonjs/World.html#alpha"},"Uj6qEoi7LWk8VX3Ljx0vY":{"uri":"/melonJS/docs/melonjs/World.html#alwaysUpdate"},"HPx98r0tJLbNW2r6zbPXM":{"uri":"/melonJS/docs/melonjs/World.html#ancestor"},"ndyQYzz9JDLC2aD-VWlRL":{"uri":"/melonJS/docs/melonjs/World.html#anchorPoint"},"hbCNUX_tAAfDRJVb5MdUj":{"uri":"/melonJS/docs/melonjs/World.html#app"},"Bq2kuQNhBqia9g3OIQ896":{"uri":"/melonJS/docs/melonjs/World.html#autoDepth"},"GXzWfxv0aj64lHX1fvnMR":{"uri":"/melonJS/docs/melonjs/World.html#autoSort"},"AMMJM6gpKC9XWyrzylrNA":{"uri":"/melonJS/docs/melonjs/World.html#autoTransform"},"6ZC50WYxp-yTZ8rNzFmcD":{"uri":"/melonJS/docs/melonjs/World.html#backgroundColor"},"ueklBwaWFgTcLrULl0GeW":{"uri":"/melonJS/docs/melonjs/World.html#blendMode"},"0kWxTMuzlOIQOf3IPIkVd":{"uri":"/melonJS/docs/melonjs/World.html#bodies"},"9LBUxPjPk5W6Xm_mp6nIt":{"uri":"/melonJS/docs/melonjs/World.html#body"},"K4tNH6vZs9I5Y0mq0Xhpy":{"uri":"/melonJS/docs/melonjs/World.html#bottom"},"X67FU1vZI6slwAJrA1BBg":{"uri":"/melonJS/docs/melonjs/World.html#broadphase"},"umMQS5Ecos8xcEi4N8Zxs":{"uri":"/melonJS/docs/melonjs/World.html#centerX"},"yJss1T3JlIAeaba6ZyIpZ":{"uri":"/melonJS/docs/melonjs/World.html#centerY"},"4X2LBuOuWoZDHTFFfTpfx":{"uri":"/melonJS/docs/melonjs/World.html#clipping"},"nEhYPM84yu8wxsFLot-uU":{"uri":"/melonJS/docs/melonjs/World.html#currentTransform"},"q1SwQ0e5XfWZiibCk7tFC":{"uri":"/melonJS/docs/melonjs/World.html#depth"},"wQYbybvYc7TKui0yN4IYT":{"uri":"/melonJS/docs/melonjs/World.html#detector"},"IKoM2Joq5W7v-CscuCeSW":{"uri":"/melonJS/docs/melonjs/World.html#enableChildBoundsUpdate"},"01F8wgHOyU58vsXoP3Q4-":{"uri":"/melonJS/docs/melonjs/World.html#floating"},"Vy1R2JYyE7rRT0Gmycy-K":{"uri":"/melonJS/docs/melonjs/World.html#fps"},"p2VMSDKh_JaJZLNCsZtRM":{"uri":"/melonJS/docs/melonjs/World.html#gravity"},"RwAA4JBeo-PoRXMml46ZZ":{"uri":"/melonJS/docs/melonjs/World.html#GUID"},"SZMGuJ9ij_NHfszcSXpuD":{"uri":"/melonJS/docs/melonjs/World.html#height"},"g_Ri1lb_jr2tEwpzKmjbf":{"uri":"/melonJS/docs/melonjs/World.html#inViewport"},"qoe1ApFEaleIux9c_eaHB":{"uri":"/melonJS/docs/melonjs/World.html#isDirty"},"cx5b-M5mDwU7KtT0askLy":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedX"},"Rut1QOSD4mrIoVBVbVjcu":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedY"},"DuwvECi5iGpc6EkH4rTiu":{"uri":"/melonJS/docs/melonjs/World.html#isFloating"},"WugVUAIvb232swgWi4mLc":{"uri":"/melonJS/docs/melonjs/World.html#isKinematic"},"uHH_lMNxnHzvRTv79--1X":{"uri":"/melonJS/docs/melonjs/World.html#isPersistent"},"je8fk7BEGLvgDB5-10XAE":{"uri":"/melonJS/docs/melonjs/World.html#left"},"UP1uUESynlhLv0HE78-dy":{"uri":"/melonJS/docs/melonjs/World.html#mask"},"W1ssA7gNn95CpXjHounlI":{"uri":"/melonJS/docs/melonjs/World.html#name"},"rznGxHDMiG56Igk_GVOeb":{"uri":"/melonJS/docs/melonjs/World.html#onVisibilityChange"},"3w9E2qyu7K27wE1D-WOAD":{"uri":"/melonJS/docs/melonjs/World.html#physic"},"yc-Ps3OmxdSDlJ084gpzz":{"uri":"/melonJS/docs/melonjs/World.html#points"},"31fxsSgbUU5uPvphBo6Wh":{"uri":"/melonJS/docs/melonjs/World.html#pos"},"cWySIL02pJ1zXD2ILCm-p":{"uri":"/melonJS/docs/melonjs/World.html#preRender"},"NxH-qoK8bRxHtj8LeJgxE":{"uri":"/melonJS/docs/melonjs/World.html#right"},"zlN8Nmy6qPVLcUeyLYvDF":{"uri":"/melonJS/docs/melonjs/World.html#root"},"8P8yqexTiq4SJE5MAr4Tp":{"uri":"/melonJS/docs/melonjs/World.html#shader"},"9JiSYnj7C1Az6NFVnw5jX":{"uri":"/melonJS/docs/melonjs/World.html#sortOn"},"SUkI4TpH28w1o9oZsfT_7":{"uri":"/melonJS/docs/melonjs/World.html#tint"},"RyItQAeGJKp275GCmKR9X":{"uri":"/melonJS/docs/melonjs/World.html#top"},"Dqu17P4HSOBMQx0qpxokC":{"uri":"/melonJS/docs/melonjs/World.html#type"},"0qbcMk7vBdDS5JP-D5BXv":{"uri":"/melonJS/docs/melonjs/World.html#updateWhenPaused"},"CGgVs24jw0BiypjR_F9G-":{"uri":"/melonJS/docs/melonjs/World.html#width"},"l3HyAuZOiwkRCRy3o9ZcK":{"uri":"/melonJS/docs/melonjs/World.html#addBody"},"RXdC64hralg2D7zNfujTn":{"uri":"/melonJS/docs/melonjs/World.html#addChild"},"3vI40HcEsfadkRIUtKgTH":{"uri":"/melonJS/docs/melonjs/World.html#addChildAt"},"wDMP3MonDqhD1r9sCVPam":{"uri":"/melonJS/docs/melonjs/World.html#angleTo"},"4O2bsq9CktpPMGZLvHaMD":{"uri":"/melonJS/docs/melonjs/World.html#centerOn"},"aABCazgZiFyFyG0PF14mX":{"uri":"/melonJS/docs/melonjs/World.html#clone"},"B-U5bdG7ySdkTWbOLMqJK":{"uri":"/melonJS/docs/melonjs/World.html#constructor"},"QO_yaJf2EPQ6d90gnIQQR":{"uri":"/melonJS/docs/melonjs/World.html#contains"},"fyKx18Liwr7vK_DVb-x8g":{"uri":"/melonJS/docs/melonjs/World.html#copy"},"H6ujNsISloku7tLFyemt9":{"uri":"/melonJS/docs/melonjs/World.html#distanceTo"},"WIJjg1quXH7XxavrDWPNl":{"uri":"/melonJS/docs/melonjs/World.html#equals"},"tbU_EFcke90E4I5mcO89q":{"uri":"/melonJS/docs/melonjs/World.html#flipX"},"M-YNLWBgw51xPEC-rY1kU":{"uri":"/melonJS/docs/melonjs/World.html#flipY"},"oEYajJDI9bm8H1-fkGu_4":{"uri":"/melonJS/docs/melonjs/World.html#forEach"},"op5lcDF_f8eJgdT5znDgU":{"uri":"/melonJS/docs/melonjs/World.html#getAbsolutePosition"},"msH73NgRn90HS_L7TaBIu":{"uri":"/melonJS/docs/melonjs/World.html#getBounds"},"1Yzm8-WWcfahwHSO1bOM7":{"uri":"/melonJS/docs/melonjs/World.html#getChildAt"},"mOqf6NIbGCyGr-ktQpi1Q":{"uri":"/melonJS/docs/melonjs/World.html#getChildByGUID"},"mcj-ENWSh-mhY-26yPba8":{"uri":"/melonJS/docs/melonjs/World.html#getChildByName"},"6vvY6BkwuJ5SPhvMS2yKL":{"uri":"/melonJS/docs/melonjs/World.html#getChildByProp"},"SPQHYTIYtoHooWt1PT7IB":{"uri":"/melonJS/docs/melonjs/World.html#getChildByType"},"WuZLUepy9YNUbH_6CStSY":{"uri":"/melonJS/docs/melonjs/World.html#getChildIndex"},"nCZn0N1k6R5Zt9ZaP0krK":{"uri":"/melonJS/docs/melonjs/World.html#getChildren"},"0eoABmJeqbJWBZb9SQCoY":{"uri":"/melonJS/docs/melonjs/World.html#getIndices"},"lqiHNQxVFhdrlkxs3vdAX":{"uri":"/melonJS/docs/melonjs/World.html#getNextChild"},"lsZaJspC0o7h37gB2Woox":{"uri":"/melonJS/docs/melonjs/World.html#getOpacity"},"KCNfHuGn4Pp5oQdFpEGcb":{"uri":"/melonJS/docs/melonjs/World.html#getRootAncestor"},"dg4c6sGb2ilwgjL-IyVSn":{"uri":"/melonJS/docs/melonjs/World.html#hasChild"},"LWDNQr9GSHiUFvDQmjfZO":{"uri":"/melonJS/docs/melonjs/World.html#isAttachedToRoot"},"vhcMQWIjDSfip8cGLOMjD":{"uri":"/melonJS/docs/melonjs/World.html#isConvex"},"i1vTm3qTIuH4ucWgbdfF3":{"uri":"/melonJS/docs/melonjs/World.html#isFinite"},"XelyR3_nhcYaspE0OS4cF":{"uri":"/melonJS/docs/melonjs/World.html#lookAt"},"4JYiIeaHJd636ZIB0X5ct":{"uri":"/melonJS/docs/melonjs/World.html#moveDown"},"folvJacn9I6uq7Sh-dkoO":{"uri":"/melonJS/docs/melonjs/World.html#moveToBottom"},"LT_olafLdACw_TxGN2foo":{"uri":"/melonJS/docs/melonjs/World.html#moveToTop"},"9cXgtk8wZYzIt2FD2mWzd":{"uri":"/melonJS/docs/melonjs/World.html#moveUp"},"VdeiROdkbCrrJrhxn8oci":{"uri":"/melonJS/docs/melonjs/World.html#onChildChange"},"QQP55CUtbiOp3xrUPYKH0":{"uri":"/melonJS/docs/melonjs/World.html#onCollision"},"MtxLMyybI1OB9hSpV4mZv":{"uri":"/melonJS/docs/melonjs/World.html#onDestroyEvent"},"ZHJJD37gIj0SwcV7RQymK":{"uri":"/melonJS/docs/melonjs/World.html#overlaps"},"tEosFT0_XmigLnQmVKS5V":{"uri":"/melonJS/docs/melonjs/World.html#postDraw"},"9pVCMHrrvuMalLTuTdbSB":{"uri":"/melonJS/docs/melonjs/World.html#preDraw"},"PDaDBQNhbs1RzgdidTSe0":{"uri":"/melonJS/docs/melonjs/World.html#recalc"},"V0cs6FkOKdQKVN43yXG7a":{"uri":"/melonJS/docs/melonjs/World.html#removeBody"},"WIoM74-M3ygYo9TeY0DCS":{"uri":"/melonJS/docs/melonjs/World.html#removeChild"},"6JkJlOxpx59yUNPpykQy0":{"uri":"/melonJS/docs/melonjs/World.html#removeChildNow"},"thD-dKFU7N35-6O6vERhi":{"uri":"/melonJS/docs/melonjs/World.html#reset"},"WEG8IgxcPuDCOJR97DEbw":{"uri":"/melonJS/docs/melonjs/World.html#resize"},"7nrncXD_1lamDqfyPmClS":{"uri":"/melonJS/docs/melonjs/World.html#rotate"},"_UzEMQRtziEdtwl-7bhRx":{"uri":"/melonJS/docs/melonjs/World.html#scale"},"EzPPEojE8z3cBi9zP5uq_":{"uri":"/melonJS/docs/melonjs/World.html#scaleV"},"WgA9RBK2-I40vUSvSyb5z":{"uri":"/melonJS/docs/melonjs/World.html#setChildsProperty"},"_Fg9XVujucs8AFA-fKdrN":{"uri":"/melonJS/docs/melonjs/World.html#setOpacity"},"dSH6vYIfd3NpyVHMrIxcJ":{"uri":"/melonJS/docs/melonjs/World.html#setShape"},"v5Bk4xuB-g30OQZkrVABZ":{"uri":"/melonJS/docs/melonjs/World.html#setVertices"},"1KZJqGRsRWICRi3BsTrY9":{"uri":"/melonJS/docs/melonjs/World.html#shift"},"G8qfT70xtaSmCKuCbMZRL":{"uri":"/melonJS/docs/melonjs/World.html#sort"},"7eD_ICnNBwQ7-pNuHXX5J":{"uri":"/melonJS/docs/melonjs/World.html#step"},"5dK1s5_d9ewcB-WsVP_MD":{"uri":"/melonJS/docs/melonjs/World.html#swapChildren"},"64oQ5d_hbmbENXg7uFewg":{"uri":"/melonJS/docs/melonjs/World.html#to2d"},"eICZB-Eijp9J0UnujeI0T":{"uri":"/melonJS/docs/melonjs/World.html#toIso"},"Z6dpCD0ojt_ad8k6KeD0l":{"uri":"/melonJS/docs/melonjs/World.html#toPolygon"},"A3kdx3rA_g5iSupUNo9mp":{"uri":"/melonJS/docs/melonjs/World.html#transform"},"9D46nfmpZq9taWgwN847i":{"uri":"/melonJS/docs/melonjs/World.html#translate"},"HuTpYDjVqXWbc0uj1b00w":{"uri":"/melonJS/docs/melonjs/World.html#union"},"RlJs7E0XwrnsNszahE28w":{"uri":"/melonJS/docs/melonjs/World.html#update"},"sxneloK2LommHxjLcACVb":{"uri":"/melonJS/docs/melonjs/World.html#updateBounds"},"yFj1mH3wywEberMClPK_g":{"uri":"/melonJS/docs/melonjs/World.html#draw"},"t1HS4qevadr1n9UyOT6rt":{"uri":"/melonJS/docs/melonjs/World.html#bodyApplyGravity"},"m8gCV1pS2LPU68QXYg0w4":{"uri":"/melonJS/docs/melonjs/World.html#onAnchorUpdate"},"hRvpv5591ZHq6qdc1MnKO":{"uri":"global.html#AUTO"},"ywu9hiDaaqI5In-Ddmux4":{"uri":"global.html#CANVAS"},"o6v9SpfqF65OqAxqC8TI5":{"uri":"global.html#version"},"HzNdHqVD0qXfCMiSSpC_2":{"uri":"global.html#WEBGL"},"phkF026n9yElS_xn_hSZv":{"uri":"global.html#imgList"},"Zht6RexeP62ErJgZrNMNH":{"uri":"global.html#initialized"},"Me58SLPCQmc70t1MHdO0r":{"uri":"global.html#parserInitialized"},"ROb-cvMAkdKsZxvfKn7dg":{"uri":"global.html#parsers"},"2_cQGyQqv7ajh_GRFjUHK":{"uri":"global.html#skipAutoInit"},"nv0XpqlcxBNjajZ4ODut6":{"uri":"/melonJS/docs/melonjs/boot.html"},"5mB43b7jTADdXKk7s1BX4":{"uri":"/melonJS/docs/melonjs/consoleHeader.html"},"hTlTgXQfaTkSXBnCsNkRd":{"uri":"/melonJS/docs/melonjs/warning.html"},"Nd8w3a8t4Xn7z688QDfXt":{"uri":"/melonJS/docs/melonjs/onresize.html"},"qQu0NQIPwRA9hmUleFPy9":{"uri":"/melonJS/docs/melonjs/scale.html"}}} \ No newline at end of file +{"version":"1.0.0","metadata":{"linker":"(unsigned)","siteRoot":"melonJS/docs"},"root":{"id":"root-EK0V8At9wV9dX221Fo4R0","name":"","type":"RootDoc","members":[{"id":"621XPQRfFca_x_ufJ6Gie","name":"audio","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"tSgB79fLZOwrMRFcWUheD","name":"stopOnAudioError","brief":"","defaultValue":"true","type":"PropertyDoc","description":"

                Specify either to stop on audio loading error or not
                \nif true, melonJS will throw an exception and stop loading
                \nif ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kr78uQAkNnnnmt8gPMUPl","name":"disable","brief":"","scope":"static","type":"FunctionDoc","description":"

                disable audio output

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uUOe7FFkxcq4-58Za0hkt","name":"enable","brief":"","scope":"static","see":["audio.disable"],"type":"FunctionDoc","description":"

                enable audio output
                \nonly useful if audio supported and previously disabled through

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s89pEPM1zOof_QuC0sPZo","name":"fade","brief":"","scope":"static","type":"FunctionDoc","description":"

                Fade a currently playing sound between two volumee.

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"from","optional":false,"description":"

                Volume to fade from (0.0 to 1.0).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"to","optional":false,"description":"

                Volume to fade to (0.0 to 1.0).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"duration","optional":false,"description":"

                Time in milliseconds to fade.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will fade.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kObPEX5Rfzb_s2mbSz4bi","name":"getCurrentTrack","brief":"","scope":"static","type":"FunctionDoc","description":"

                returns the current track Id

                ","params":[],"returns":[{"description":"

                audio track name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"-TWynriupu3VVs7PdlI8N","name":"getVolume","brief":"","scope":"static","type":"FunctionDoc","description":"

                get the default global volume

                ","params":[],"returns":[{"description":"

                current volume value in Float [0.0 - 1.0] .

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PEV7tCPxAV79dmEbzkhXP","name":"hasAudio","brief":"","scope":"static","type":"FunctionDoc","description":"

                check if audio (HTML5 or WebAudio) is supported

                ","params":[],"returns":[{"description":"

                return true if audio (HTML5 or WebAudio) is supported

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"r5ooIj9oVyprL202ggraG","name":"hasFormat","brief":"","scope":"static","type":"FunctionDoc","description":"

                check if the given audio format is supported

                ","params":[{"identifier":"codec","optional":false,"description":"

                the audio format to check for support

                ","dataType":{"tokens":[{"value":"\"mp3\" | \"mpeg\" | \"opus\" | \"ogg\" | \"oga\" | \"wav\" | \"aac\" | \"caf\" | \"m4a\" | \"m4b\" | \"mp4\" | \"weba\" | \"webm\" | \"dolby\" | \"flac\"","kind":"canonical"},{"value":"\"mp3\"","kind":"canonical"},{"value":"\"mpeg\"","kind":"canonical"},{"value":"\"opus\"","kind":"canonical"},{"value":"\"ogg\"","kind":"canonical"},{"value":"\"oga\"","kind":"canonical"},{"value":"\"wav\"","kind":"canonical"},{"value":"\"aac\"","kind":"canonical"},{"value":"\"caf\"","kind":"canonical"},{"value":"\"m4a\"","kind":"canonical"},{"value":"\"m4b\"","kind":"canonical"},{"value":"\"mp4\"","kind":"canonical"},{"value":"\"weba\"","kind":"canonical"},{"value":"\"webm\"","kind":"canonical"},{"value":"\"dolby\"","kind":"canonical"},{"value":"\"flac\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}}],"returns":[{"description":"

                return true if the given audio format is supported

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qrfOhHi8Dnv9dFgaDfzdi","name":"init","brief":"","examples":[{"caption":"","code":"// initialize the \"sound engine\", giving \"webm\" as default desired audio format, and \"mp3\" as a fallback\nif (!me.audio.init(\"webm,mp3\")) {\n alert(\"Sorry but your browser does not support html 5 audio !\");\n return;\n}"}],"scope":"static","type":"FunctionDoc","description":"

                Initialize and configure the audio support.
                \nFor a maximum browser coverage the recommendation is to use at least two o...","params":[{"identifier":"format","optional":true,"default":"\"mp3\"","description":"

                audio format to prioritize ("mp3"|"mpeg"|"opus"|"ogg"|"oga"|"wav&qu...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                Indicates whether audio initialization was successful

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mR0rp6efxfHmgubOA9MqK","name":"load","brief":"","scope":"static","type":"FunctionDoc","description":"

                Load an audio file

                ","params":[{"identifier":"sound","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}},{"identifier":"onloadcb","optional":true,"description":"

                function to be called when the resource is loaded

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"onerrorcb","optional":true,"description":"

                function to be called in case of error

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                the amount of asset loaded (always 1 if successfull)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5nuta_YAWQe34OxKZi3LI","name":"mute","brief":"","examples":[{"caption":"","code":"// mute the background music\nme.audio.mute(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

                mute or unmute the specified sound, but does not pause the playback.

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will mute.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"mute","optional":true,"default":"true","description":"

                True to mute and false to unmute

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"QrKMEDUMj_PglrxfKopaL","name":"muteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

                mute all audio

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"44dkL2C5i_usIeNifbo1A","name":"muted","brief":"","scope":"static","type":"FunctionDoc","description":"

                Returns true if audio is muted globally.

                ","params":[],"returns":[{"description":"

                true if audio is muted globally

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Wg59xE_nUuFBL-6WyxgfH","name":"pause","brief":"","examples":[{"caption":"","code":"me.audio.pause(\"cling\");"}],"scope":"static","type":"FunctionDoc","description":"

                pause the specified sound on all channels
                \nthis function does not reset the currentTime property

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will pause.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"3toEzYQ9bA3e0UW_-cNCE","name":"pauseTrack","brief":"","examples":[{"caption":"","code":"me.audio.pauseTrack();"}],"scope":"static","type":"FunctionDoc","description":"

                pause the current audio track

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hokWnRKF-r-Rz1KoKU9bx","name":"play","brief":"","examples":[{"caption":"","code":"// play the \"cling\" audio clip\nme.audio.play(\"cling\");\n// play & repeat the \"engine\" audio clip\nme.audio.play(\"engine\", true);\n// play the \"gameover_sfx\" audio clip and call myFunc when finished\nme.audio.play(\"gameover_sfx\", false, myFunc);\n// play the \"gameover_sfx\" audio clip with a lower volume level\nme.audio.play(\"gameover_sfx\", false, null, 0.5);"}],"scope":"static","type":"FunctionDoc","description":"

                play the specified sound

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"loop","optional":true,"default":"false","description":"

                loop audio

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"onend","optional":true,"description":"

                Function to call when sound instance ends playing.

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"volume","optional":true,"default":"default","description":"

                Float specifying volume (0.0 - 1.0 values accepted).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                the sound instance ID.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kv32aSrSZvwxD92W1Ca4o","name":"playTrack","brief":"","examples":[{"caption":"","code":"me.audio.playTrack(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

                play the specified audio track
                \nthis function automatically set the loop property to true
                \nand keep track of the cur...","params":[{"identifier":"sound_name","optional":false,"description":"

                audio track name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"volume","optional":true,"default":"default","description":"

                Float specifying volume (0.0 - 1.0 values accepted).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                the sound instance ID.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gPLk3_JkGT7lmePnbHfKV","name":"rate","brief":"","examples":[{"caption":"","code":"// get the playback rate of the background music\nlet rate = me.audio.rate(\"dst-gameforest\");\n// speed up the playback of the background music\nme.audio.rate(\"dst-gameforest\", 2.0);"}],"scope":"static","type":"FunctionDoc","description":"

                get or set the rate of playback for a sound.

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"rate","optional":true,"variadic":true,"description":"

                playback rate : 0.5 to 4.0, with 1.0 being normal speed.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will be changed.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                return the current playback rate (if no extra parameters were given)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VUFu4gr3aAmvPOmV-0nxs","name":"resume","brief":"","examples":[{"caption":"","code":"// play a audio clip\nlet id = me.audio.play(\"myClip\");\n...\n// pause it\nme.audio.pause(\"myClip\", id);\n...\n// resume\nme.audio.resume(\"myClip\", id);"}],"scope":"static","type":"FunctionDoc","description":"

                resume the specified sound on all channels

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will resume.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LCb0I_ZzClLkj5lM_dh8P","name":"resumeTrack","brief":"","examples":[{"caption":"","code":"// play an awesome music\nme.audio.playTrack(\"awesome_music\");\n// pause the audio track\nme.audio.pauseTrack();\n// resume the music\nme.audio.resumeTrack();"}],"scope":"static","type":"FunctionDoc","description":"

                resume the previously paused audio track

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h72mbkFkU9hS-9U9d_yMT","name":"seek","brief":"","examples":[{"caption":"","code":"// return the current position of the background music\nlet current_pos = me.audio.seek(\"dst-gameforest\");\n// set back the position of the background music to the beginning\nme.audio.seek(\"dst-gameforest\", 0);"}],"scope":"static","type":"FunctionDoc","description":"

                get/set the position of playback for a sound.

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"seek","optional":true,"variadic":true,"description":"

                the position to move current playback to (in seconds).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will changed.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                return the current seek position (if no extra parameters were given)

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CLOwbb7m8OOfASGGV-QRc","name":"setVolume","brief":"","scope":"static","type":"FunctionDoc","description":"

                set the default global volume

                ","params":[{"identifier":"volume","optional":false,"description":"

                Float specifying volume (0.0 - 1.0 values accepted).

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"j0eynV8z7wl7Qkxa2ESNX","name":"stop","brief":"","examples":[{"caption":"","code":"me.audio.stop(\"cling\");"}],"scope":"static","type":"FunctionDoc","description":"

                stop the specified sound on all channels

                ","params":[{"identifier":"sound_name","optional":true,"description":"

                audio clip name (case sensitive). If none is passed, all sounds are stopped.

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will stop.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zJBBglJHBIvth8lekZ8fL","name":"stopTrack","brief":"","examples":[{"caption":"","code":"// play a awesome music\nme.audio.playTrack(\"awesome_music\");\n// stop the current music\nme.audio.stopTrack();"}],"scope":"static","see":["audio.playTrack"],"type":"FunctionDoc","description":"

                stop the current audio track

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VW1oX3Q3MdhFhcrwM95Yw","name":"unload","brief":"","examples":[{"caption":"","code":"me.audio.unload(\"awesome_music\");"}],"scope":"static","type":"FunctionDoc","description":"

                unload specified audio track to free memory

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio track name - case sensitive

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                true if unloaded

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"p6_Qi53BRr9WYnEUwM2G5","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.audio.unloadAll();"}],"scope":"static","type":"FunctionDoc","description":"

                unload all audio to free memory

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UnkPqTqW5YVr_XhLQ56F0","name":"unmute","brief":"","scope":"static","type":"FunctionDoc","description":"

                unmute the specified sound

                ","params":[{"identifier":"sound_name","optional":false,"description":"

                audio clip name

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"id","optional":true,"description":"

                the sound instance ID. If none is passed, all sounds in group will unmute.

                ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sKP5wV3G9cVAyCLubdeoN","name":"unmuteAll","brief":"","scope":"static","type":"FunctionDoc","description":"

                unmute all audio

                ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"Z94Rw9XFpsyMYSomjSXyb","name":"collision","brief":"","type":"NSDoc","description":"

                Collision detection (and projection-based collision response) of 2D shapes.
                \nBased on the Separating Axis Theorem and s...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"97vjuXemPkqETRUMZ6A5L","name":"types","brief":"","examples":[{"caption":"","code":" // set the body collision type\n myEntity.body.collisionType = me.collision.types.PLAYER_OBJECT;\n\n // filter collision detection with collision shapes, enemies and collectables\n myEntity.body.setCollisionMask(\n me.collision.types.WORLD_SHAPE |\n me.collision.types.ENEMY_OBJECT |\n me.collision.types.COLLECTABLE_OBJECT\n );\n\n // User-defined collision types are defined using BITWISE LEFT-SHIFT:\n game.collisionTypes = {\n LOCKED_DOOR : me.collision.types.USER << 0,\n OPEN_DOOR : me.collision.types.USER << 1,\n LOOT : me.collision.types.USER << 2,\n };\n\n // Set collision type for a door entity\n myDoorEntity.body.collisionType = game.collisionTypes.LOCKED_DOOR;\n\n // Set collision mask for the player entity, so it collides with locked doors and loot\n myPlayerEntity.body.setCollisionMask(\n me.collision.types.ENEMY_OBJECT |\n me.collision.types.WORLD_SHAPE |\n game.collisionTypes.LOCKED_DOOR |\n game.collisionTypes.LOOT\n );"}],"readonly":true,"scope":"static","see":["Body.setCollisionMask","Body.collisionType"],"type":"EnumDoc","description":"

                Enum for collision type values.

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"XiSR1BhuO6AaLx08J8OBj","name":"ACTION_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                e.g. doors

                "},{"id":"u24Hg2u6lnI37CHItjXNA","name":"ALL_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                all of the above (including user-defined types)

                "},{"id":"iKVU1Dip2nv0Q1wglwkqY","name":"COLLECTABLE_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                collectable objects

                "},{"id":"AuegZKCRr4MHzMX4VX8il","name":"ENEMY_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                enemies objects

                "},{"id":"k2CD1nd0dyrY2lDktxWZE","name":"NO_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                to disable collision check

                "},{"id":"lXZbyYSwV_YuUqE9MrOrb","name":"NO_OBJECT","brief":"

                to disable collision check

                ","defaultValue":"0","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0iKrS4_-v2TSIetaFp38_","name":"NPC_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                non playable characters

                "},{"id":"u91ylYfuqyu8lpB2bOZCb","name":"PLAYER_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                playbable characters

                "},{"id":"SJNiAd6p-thmb6AZYbd56","name":"PROJECTILE_OBJECT","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                e.g. missiles

                "},{"id":"-_uSu2pQ4Eu1ztYRnfKJT","name":"USER","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                user-defined collision types (see example)

                "},{"id":"lz1qC8QN0GbUg_kzVYDZ9","name":"WORLD_SHAPE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                e.g. walls; for map collision shapes

                "}]},{"id":"aSWGZBfOe95P2ipjYCOFi","name":"maxChildren","brief":"","access":"public","defaultValue":"8","scope":"static","see":["game.world.broadphase"],"type":"PropertyDoc","description":"

                The maximum number of children that a quadtree node can contain before it is split into sub-nodes.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gmOAtbk-zZA0l0MdbSTD7","name":"maxDepth","brief":"","access":"public","defaultValue":"4","scope":"static","see":["game.world.broadphase"],"type":"PropertyDoc","description":"

                The maximum number of levels that the quadtree will create.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hfJSuSJs7zki4YkNY2pxf","name":"rayCast","brief":"","access":"public","examples":[{"caption":"","code":" // define a line accross the viewport\n let ray = new me.Line(\n // absolute position of the line\n 0, 0, [\n // starting point relative to the initial position\n new me.Vector2d(0, 0),\n // ending point\n new me.Vector2d(me.game.viewport.width, me.game.viewport.height)\n ]);\n\n // check for collition\n result = me.collision.rayCast(ray);\n\n if (result.length > 0) {\n // ...\n }"}],"scope":"instance","type":"MethodDoc","description":"

                Checks for object colliding with the given line

                ","params":[{"identifier":"line","optional":false,"description":"

                line to be tested for collision

                ","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}},{"identifier":"result","optional":true,"description":"

                a user defined array that will be populated with intersecting physic objects.

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                an array of intersecting physic objects

                ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]}]},{"id":"yRLYmtkm4GEO0EAHfIlyb","name":"device","brief":"","defaultValue":"false","type":"NSDoc","description":"

                device type and capabilities

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"FDMDnvbIYW9nvlarQ8chx","name":"platform","brief":"","readonly":true,"type":"NSDoc","description":"

                The device platform type

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"eEmjf8hHbqTc23hELrQBr","name":"android","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is an Android platform

                "},{"id":"7yY8q3DBmbTW-Lw7nEHKP","name":"android2","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is an Android 2.x platform

                "},{"id":"JzZuPLhoBg7-u-d3JuPCw","name":"BlackBerry","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is a BlackBerry platform

                "},{"id":"CKbKFQz6dPOlmvqdWyxV_","name":"chromeOS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is running on ChromeOS.

                "},{"id":"Kesrto7wytTJJrMXn3onE","name":"ejecta","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if running under Ejecta

                "},{"id":"f-nRzhv8tGswqub40LUcZ","name":"iOS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is an iOS platform

                "},{"id":"MpSX2wXAzoM4mYWe8IV2D","name":"isMobile","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if a mobile device

                "},{"id":"F4_U4R7cuebCGJjPO3FWL","name":"isWeixin","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if running under Wechat

                "},{"id":"kvqGhQoWPYOepUmopLKJ4","name":"Kindle","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is a Kindle platform

                "},{"id":"cJWvE9tZoCqmYkl1lV9Ds","name":"linux","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is a Linux platform

                "},{"id":"QKT_uz2aZewhdfMIJdsu1","name":"nodeJS","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if running under node.js

                "},{"id":"keHoy140LlOfuoixTtYRm","name":"ua","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                the user agent string for the current device

                "},{"id":"wRVNpXmXcdbYUxXCSeKf4","name":"wp","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                true if the device is a Windows Phone platform

                "}]},{"id":"PeRhxj9eokSOdx1jyg2kd","name":"accelerationX","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

                contains the g-force acceleration along the x-axis.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OG0gHvpGmjlI_64rwuAcn","name":"accelerationY","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

                contains the g-force acceleration along the y-axis.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QgIr7rMPbVF99YxXXKHMV","name":"accelerationZ","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchAccelerometer"],"type":"PropertyDoc","description":"

                contains the g-force acceleration along the z-axis.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7bQ3SEvkqEyqrXkPcy93o","name":"alpha","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

                Device orientation Alpha property. Gives angle based on the rotation of the phone around its z axis.\nThe z-axis is perpend...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o5Iex2TBNtfoSjTby37Nm","name":"autoFocus","brief":"","access":"public","defaultValue":"true","type":"PropertyDoc","description":"

                Specify whether to automatically bring the window to the front

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2rrp4dxqJhHJk7QEZAB5f","name":"beta","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

                Device orientation Beta property. Gives angle on tilting a portrait held phone forward or backward

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fSrdsLT-TpZ_F0LfJO6pc","name":"devicePixelRatio","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Ratio of the resolution in physical pixels to the resolution in CSS pixels for the current display device.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"60g3WT6UScGh5vvXxW5eD","name":"gamma","brief":"","access":"public","defaultValue":"0","readonly":true,"see":["device.watchDeviceOrientation"],"type":"PropertyDoc","description":"

                Device orientation Gamma property. Gives angle on tilting a portrait held phone left or right

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EHcHdvHbmWb-9t_YSCPeQ","name":"hasAccelerometer","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                Browser accelerometer capabilities

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Mam-LHc522mMYUNnFc6l","name":"hasDeviceOrientation","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                Browser device orientation

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VvVCehc1SGuFUEkLUABvB","name":"hasFullscreenSupport","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Browser full screen support

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_r1Vuk-6Mc_8zkoLqnoE9","name":"hasHTML5Audio","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Device HTML5Audio Support

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CvOX5bYU4y0Jhf5nPNXrM","name":"hasPointerLockSupport","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Browser pointerlock api support

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oBlQ4g6NbflOfqnafvMuD","name":"hasWebAudio","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                Device WebAudio Support

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nBJZWSqFCdhXT2VXw6ns_","name":"isMobile","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                equals to true if a mobile device.\n(Android | iPhone | iPad | iPod | BlackBerry | Windows Phone | Kindle)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2r-lhAkFg_e90kOeJd1Dh","name":"language","brief":"","access":"public","readonly":true,"see":["http://www.w3schools.com/tags/ref_language_codes.asp"],"type":"PropertyDoc","description":"

                a string representing the preferred language of the user, usually the language of the browser UI.\n(will default to "e...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uwKrqwV0y4MYTcOFR0dDn","name":"localStorage","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Browser Local Storage capabilities
                \n(this flag will be set to false if cookies are blocked)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uOrC1p5o8mCOTkQ8TedFg","name":"maxTouchPoints","brief":"","access":"public","examples":[{"caption":"","code":"if (me.device.maxTouchPoints > 1) {\n // device supports multi-touch\n}"}],"readonly":true,"type":"PropertyDoc","description":"

                the maximum number of simultaneous touch contact points are supported by the current device.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RM0IkfS1BAYucvsuXucGx","name":"nativeBase64","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Browser Base64 decoding capability

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZSPqvy_Cd-NHnn_pe8PrP","name":"offscreenCanvas","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                equals to true if the device browser supports OffScreenCanvas.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dJoSeSKHR0Ci9B9VCScef","name":"pauseOnBlur","brief":"","access":"public","defaultValue":"true","deprecated":"since 15.4.0","see":["Application.pauseOnBlur"],"type":"PropertyDoc","description":"

                Specify whether to pause the game when losing focus

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c8v3qRPn2V7pbeNxyrs03","name":"platform","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                the device platform type

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h3HddxhbIK8E9B-kSJzD7","name":"pointerEvent","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                True if the browser supports Pointer Events

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C4AQt_oWJiNWlPx9m3tsO","name":"resumeOnFocus","brief":"","access":"public","defaultValue":"true","deprecated":"since 15.4.0","see":["Application.resumeOnFocus"],"type":"PropertyDoc","description":"

                Specify whether to unpause the game when gaining focus

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xmstl2e0Rrzg6893kVL08","name":"screenOrientation","brief":"","access":"public","readonly":true,"see":["https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation/onchange"],"type":"PropertyDoc","description":"

                Supports the ScreenOrientation API

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MkqX-hf_1gzP5TtbdOBZA","name":"sound","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Returns true if the browser/device has audio capabilities.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"awwgkqESjpLJH4NRjyfL4","name":"stopOnBlur","brief":"","access":"public","defaultValue":"false","deprecated":"since 15.4.0","see":["Application.stopOnBlur"],"type":"PropertyDoc","description":"

                Specify whether to stop the game when losing focus or not.\nThe engine restarts on focus if this is enabled.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ua6Gx3Yxr5fmLz5RjROpz","name":"touch","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                Touch capabilities (support either Touch or Pointer events)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4KPoJ7lR4aF-mKbFNBjtk","name":"touchEvent","brief":"","access":"public","defaultValue":"--","readonly":true,"type":"PropertyDoc","description":"

                True if the browser supports Touch Events

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XkctnQqIZG2RPQpnNHmO_","name":"wheel","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                W3C standard wheel events

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wXpdjHD0-qs5LUXv_7Zth","name":"enableSwipe","brief":"","access":"public","type":"FunctionDoc","description":"

                enable/disable swipe on WebView.

                ","params":[{"identifier":"enable","optional":true,"default":"true","description":"

                enable or disable swipe.

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"dU3U0NAduDtr4Mtg18qiJ","name":"exitFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

                Exit fullscreen mode. Requires fullscreen support from the browser/device.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V13OE8n9BQ83xZGT0Og_w","name":"focus","brief":"","access":"public","examples":[{"caption":"","code":"if (clicked) {\n me.device.focus();\n}"}],"type":"FunctionDoc","description":"

                Makes a request to bring this device window to the front.

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_cODt56qYDK0wOcUa4HDC","name":"getElement","brief":"","access":"public","type":"FunctionDoc","description":"

                return the DOM element for the given element name or HTMLElement object

                ","params":[{"identifier":"element","optional":false,"description":"

                the parent element name or a HTMLElement object

                ","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

                the corresponding DOM Element or null if not existing

                ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x50Evvtk7M49W-4hs6EwE","name":"getElementBounds","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/DOMRect"],"type":"FunctionDoc","description":"

                returns the size of the given HTMLElement and its position relative to the viewport\n
                an HTMLElement object

                ","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

                the size and position of the element relatively to the viewport

                ","dataType":{"tokens":[{"value":"DOMRect","kind":"canonical"},{"value":"DOMRect","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FomJh0LEMxVH6S4HzhxDf","name":"getParentBounds","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/DOMRect"],"type":"FunctionDoc","description":"

                returns the size of the given HTMLElement Parent and its position relative to the viewport\n
                an HTMLElement object

                ","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

                the size and position of the given element parent relative to the viewport

                ","dataType":{"tokens":[{"value":"DOMRect","kind":"canonical"},{"value":"DOMRect","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wg7oORc5KFivrvzXeLNw2","name":"getParentElement","brief":"","access":"public","type":"FunctionDoc","description":"

                return the parent DOM element for the given parent name or HTMLElement object

                ","params":[{"identifier":"element","optional":false,"description":"

                the parent element name or a HTMLElement object

                ","dataType":{"tokens":[{"value":"string | HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

                the parent Element

                ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H2yhhw9mZCziYeKdRZ0eX","name":"getScreenOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/orientation"],"type":"FunctionDoc","description":"

                Return a string representing the orientation of the device screen.\nIt can be "any", "natural", "l...","params":[],"returns":[{"description":"

                the screen orientation

                ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"scAoZcYQTKgPd9t5amgRy","name":"getStorage","brief":"","access":"public","see":["save"],"type":"FunctionDoc","description":"

                return the device storage

                ","params":[{"identifier":"type","optional":true,"default":"\"local\"","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                a reference to the device storage

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"mS7DBdeMnTCNnTIjm1s0d","name":"isFullscreen","brief":"","access":"public","type":"FunctionDoc","description":"

                Returns true if the browser/device is in full screen mode.

                ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dDeeMa4UZTozgJ06ifKQo","name":"isLandscape","brief":"","access":"public","type":"FunctionDoc","description":"

                return true if the device screen orientation is in Portrait mode

                ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"743a2VH4rlqjT67UwIpHK","name":"isPortrait","brief":"","access":"public","type":"FunctionDoc","description":"

                return true if the device screen orientation is in Portrait mode

                ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HK83GLiv6pJfYDd5M4Qxa","name":"isWebGLSupported","brief":"","access":"public","type":"FunctionDoc","description":"

                returns true if the device supports WebGL

                ","params":[{"identifier":"options","optional":true,"description":"

                context creation options

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.failIfMajorPerformanceCaveat","optional":true,"default":"true","description":"

                If true, the renderer will switch to CANVAS mode if the performances of a WebGL context would be dramatically lower than t...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                true if WebGL is supported

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7yK6XNFjqrSyZ-YYgz4eV","name":"lockOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation"],"type":"FunctionDoc","description":"

                locks the device screen into the specified orientation.
                \nThis method only works for installed Web apps or for Web pages...","params":[{"identifier":"orientation","optional":false,"description":"

                The orientation into which to lock the screen.

                ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[{"description":"

                true if the orientation was unsuccessfully locked

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"IelIVgkLcAcw_SVbWtSHE","name":"onReady","brief":"","access":"public","examples":[{"caption":"","code":" // small game skeleton\n let game = {\n // called by the me.device.onReady function\n onload = function () {\n // init video\n if (!me.video.init('screen', 640, 480, true)) {\n alert(\"Sorry but your browser does not support html 5 canvas.\");\n return;\n }\n\n // initialize the \"audio\"\n me.audio.init(\"mp3,ogg\");\n\n // set callback for ressources loaded event\n me.loader.onload = this.loaded.bind(this);\n\n // set all ressources to be loaded\n me.loader.preload(game.assets);\n\n // load everything & display a loading screen\n me.state.change(me.state.LOADING);\n };\n\n // callback when everything is loaded\n loaded = function () {\n // define stuff\n // ....\n\n // change to the menu screen\n me.state.change(me.state.PLAY);\n }\n }; // game\n\n // \"bootstrap\"\n me.device.onReady(function () {\n game.onload();\n });"}],"type":"FunctionDoc","description":"

                specify a function to execute when the Device is fully loaded and ready

                ","params":[{"identifier":"fn","optional":false,"description":"

                the function to be executed

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"wB0VW7dgTp9YLDuRgB7Av","name":"requestFullscreen","brief":"","access":"public","examples":[{"caption":"","code":"// add a keyboard shortcut to toggle Fullscreen mode on/off\nme.input.bindKey(me.input.KEY.F, \"toggleFullscreen\");\nme.event.on(me.event.KEYDOWN, function (action, keyCode, edge) {\n // toggle fullscreen on/off\n if (action === \"toggleFullscreen\") {\n me.device.requestFullscreen();\n } else {\n me.device.exitFullscreen();\n }\n});"}],"type":"FunctionDoc","description":"

                Triggers a fullscreen request. Requires fullscreen support from the browser/device.

                ","params":[{"identifier":"element","optional":true,"description":"

                the element to be set in full-screen mode.

                ","dataType":{"tokens":[{"value":"Element","kind":"canonical"},{"value":"Element","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qzaY4gSHRYICruINx8itM","name":"unlockOrientation","brief":"","access":"public","see":["https://developer.mozilla.org/en-US/docs/Web/API/Screen/lockOrientation"],"type":"FunctionDoc","description":"

                unlocks the device screen into the specified orientation.
                \nThis method only works for installed Web apps or for Web pag...","params":[],"returns":[{"description":"

                true if the orientation was unsuccessfully unlocked

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CGpReY8F5PRXriHnobKZQ","name":"unwatchAccelerometer","brief":"","access":"public","type":"FunctionDoc","description":"

                unwatch Accelerometor event

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rJlJ98rm5PiYrGW55rtUJ","name":"unwatchDeviceOrientation","brief":"","access":"public","type":"FunctionDoc","description":"

                unwatch Device orientation event

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a9uUgrTpe4B3O2XXHXVhr","name":"vibrate","brief":"","access":"public","examples":[{"caption":"","code":"// vibrate for 1000 ms\nme.device.vibrate(1000);\n// or alternatively\nme.device.vibrate([1000]);\n// vibrate for 50 ms, be still for 100 ms, and then vibrate for 150 ms:\nme.device.vibrate([50, 100, 150]);\n// cancel any existing vibrations\nme.device.vibrate(0);"}],"type":"FunctionDoc","description":"

                the vibrate method pulses the vibration hardware on the device,
                \nIf the device doesn't support vibration, this method ...","params":[{"identifier":"pattern","optional":false,"description":"

                pattern of vibration and pause intervals

                ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | %3<%2>"}}],"returns":[],"extends":[],"implements":[]},{"id":"5z6lcFjh00yrEY8fozL4j","name":"watchAccelerometer","brief":"","access":"public","examples":[{"caption":"","code":"// try to enable device accelerometer event on user gesture\nme.input.registerPointerEvent(\"pointerleave\", me.game.viewport, function() {\n if (me.device.watchAccelerometer() === true) {\n // Success\n me.input.releasePointerEvent(\"pointerleave\", me.game.viewport);\n } else {\n // ... fail at enabling the device accelerometer event\n }\n});"}],"see":["device.accelerationX","device.accelerationY","device.accelerationZ"],"type":"FunctionDoc","description":"

                Enable monitor of the device accelerator to detect the amount of physical force of acceleration the device is receiving.\n(...","params":[],"returns":[{"description":"

                false if not supported or permission not granted by the user

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"xQzbZImk12LvrSdWHKvB1","name":"watchDeviceOrientation","brief":"","access":"public","examples":[{"caption":"","code":"// try to enable device orientation event on user gesture\nme.input.registerPointerEvent(\"pointerleave\", me.game.viewport, function() {\n if (me.device.watchDeviceOrientation() === true) {\n // Success\n me.input.releasePointerEvent(\"pointerleave\", me.game.viewport);\n } else {\n // ... fail at enabling the device orientation event\n }\n});"}],"see":["device.alpha","device.beta","device.gamma"],"type":"FunctionDoc","description":"

                Enable monitor of the device orientation to detect the current orientation of the device as compared to the Earth coordina...","params":[],"returns":[{"description":"

                false if not supported or permission not granted by the user

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"q-LZJUiRdhWRiCYwwZftF","name":"event","brief":"","type":"NSDoc","description":"

                an event system based on nodeJS EventEmitter interface

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"a6Du_Q3oLDHXtG9sp7NfM","name":"BLUR","brief":"","access":"public","defaultValue":"\"me.blur\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event generated when the main browser or window is losing focus

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ph95kT85TgfWhI1JtjcUp","name":"BOOT","brief":"","access":"public","defaultValue":"\"me.boot\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event when the system is booting

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s6IBPxA4MaUmp1Ln8LfRT","name":"CANVAS_ONRESIZE","brief":"","access":"public","defaultValue":"\"canvas.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the canvas is resized
                \n(this usually follows a WINDOW_ONRESIZE event).
                \nData passed : {number} canva...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g4BtsSb5RRulOGO0tCLP4","name":"DOM_READY","brief":"","access":"public","defaultValue":"\"dom_ready\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event when the DOM is Ready is booting

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"erXIy92ahvv0u9R4M4nfU","name":"DRAGEND","brief":"","access":"public","defaultValue":"\"me.game.dragend\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for dragend events on a Draggable entity
                \nData passed:\n{object} the drag event
                \n{object} the Draggable entit...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KKBWbA0neuaOcgq4O5BnP","name":"DRAGSTART","brief":"","access":"public","defaultValue":"\"me.game.dragstart\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for dragstart events on a Draggable entity
                \nData passed:\n{object} the drag event
                \n{object} the Draggable ent...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X68xeiWmyFwTE5r4Gjd4d","name":"FOCUS","brief":"","access":"public","defaultValue":"\"me.focus\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event generated when the main browser or window is gaining back focus

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"13yVNwGkKzmDvQjBV7wcA","name":"GAME_AFTER_DRAW","brief":"","access":"public","defaultValue":"\"me.game.afterDraw\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for the start of the draw loop\nData passed : {number} time the current time stamp

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ktcbFSqkkbigsr5-4j6ju","name":"GAME_AFTER_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.afterUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for the end of the update loop\nData passed : {number} time the current time stamp

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BNGKxW322luwjc5GQ9yK8","name":"GAME_BEFORE_DRAW","brief":"","access":"public","defaultValue":"\"me.game.beforeDraw\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for the end of the draw loop\nData passed : {number} time the current time stamp

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"exgJPwhuD9ItCQrO_zXS_","name":"GAME_BEFORE_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.beforeUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the engine is about to start a new game loop\nData passed : {number} time the current time stamp

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gPZMhba5arf4Oiofr1cPM","name":"GAME_INIT","brief":"","access":"public","defaultValue":"\"me.game.onInit\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the game manager is initialized
                \nData passed : none

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EDUdWkUSm1FyHFg7Wilz2","name":"GAME_RESET","brief":"","access":"public","defaultValue":"\"me.game.onReset\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the game manager is resetted
                \nData passed : none

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wgZezTYGHOleAPpj0TO4a","name":"GAME_UPDATE","brief":"","access":"public","defaultValue":"\"me.game.onUpdate\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the game is updated (will be impacted by frame skip, frame interpolation and pause/resume state)
                \nData ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1sI0HwAEj5Oanaeqb976B","name":"GAMEPAD_CONNECTED","brief":"","access":"public","defaultValue":"\"gamepad.connected\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when a gamepad is connected
                \nData passed : {object} gamepad object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4Eyqn6LfD9bvrqgsA11i","name":"GAMEPAD_DISCONNECTED","brief":"","access":"public","defaultValue":"\"gamepad.disconnected\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when a gamepad is disconnected
                \nData passed : {object} gamepad object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FzNXYX31iRsiM91ktwcjx","name":"GAMEPAD_UPDATE","brief":"","access":"public","defaultValue":"\"gamepad.update\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when gamepad button/axis state is updated
                \nData passed : {number} index
                \nData passed : {string} type : &...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NWTl95TAvz-eryKe7yYMy","name":"KEYDOWN","brief":"","access":"public","defaultValue":"\"me.input.keydown\"","examples":[{"caption":"","code":" me.input.bindKey(me.input.KEY.X, \"jump\", true); // Edge-triggered\n me.input.bindKey(me.input.KEY.Z, \"shoot\"); // Level-triggered\n me.event.on(me.event.KEYDOWN, (action, keyCode, edge) => {\n // Checking bound keys\n if (action === \"jump\") {\n if (edge) {\n this.doJump();\n }\n\n // Make character fall slower when holding the jump key\n this.vel.y = this.body.gravity;\n }\n });"}],"readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for pressing a binded key
                \nData passed : {string} user-defined action, {number} keyCode,\n{boolean} edge state {\n // Checking unbound keys\n if (keyCode == me.input.KEY.ESC) {\n if (me.state.isPaused()) {\n me.state.resume();\n }\n else {\n me.state.pause();\n }\n }\n});"}],"readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for releasing a binded key
                \nData passed : {string} user-defined action, {number} keyCode

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"06HO0YqG6BnjSY-L-fVEH","name":"LEVEL_LOADED","brief":"","access":"public","defaultValue":"\"me.game.onLevelLoaded\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when a level is loaded
                \nData passed : {string} Level Name

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dUEoOZX3jqnyB5fPgX3Nv","name":"LOADER_COMPLETE","brief":"","access":"public","defaultValue":"\"me.loader.onload\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when everything has loaded
                \nData passed : none

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i60QzExTphZpBEkpMqnrg","name":"LOADER_PROGRESS","brief":"","access":"public","defaultValue":"\"me.loader.onProgress\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for displaying a load progress indicator
                \nData passed : {number} [0 .. 1], {Resource} resource object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aUZ8KRcf3zL-RGS_WD5o3","name":"ONCONTEXT_RESTORED","brief":"","access":"public","defaultValue":"\"renderer.contextrestored\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the current context is restored
                \nData passed : {me.Renderer} the current renderer instance`

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GaV2S8xKOLRE1vxRoHIU_","name":"POINTERLOCKCHANGE","brief":"","access":"public","defaultValue":"\"me.event.pointerlockChange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for onPointerLockChange event
                \nData passed : {boolean} pointer lock status (true/false)

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CiV75_aSxlqLiI7_3-k5T","name":"POINTERMOVE","brief":"","access":"public","defaultValue":"\"me.event.pointermove\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for pointermove events on the screen area
                \nData passed : {me.Pointer} a Pointer object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JK8_hNLHV_q6YRSB1j9NJ","name":"STAGE_RESET","brief":"","access":"public","defaultValue":"\"me.stage.onReset\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when a stage is resetted

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"40h63DGUgJ8CebWVmqLEP","name":"STATE_CHANGE","brief":"","access":"public","defaultValue":"\"me.state.onChange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the changing to a different stage

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w3orIwEs41wmxpoNiasbd","name":"STATE_PAUSE","brief":"","access":"public","defaultValue":"\"me.state.onPause\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event when the game is paused
                \nData passed : none

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JuHx5P_VT9Ta3962j65TQ","name":"STATE_RESTART","brief":"","access":"public","defaultValue":"\"me.state.onRestart\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the game is restarted
                \nData passed : {number} time in ms the game was stopped

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B9OWwkKMMw6B38erS18nj","name":"STATE_RESUME","brief":"","access":"public","defaultValue":"\"me.state.onResume\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event for when the game is resumed
                \nData passed : {number} time in ms the game was paused

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lzrgu0MILImE70Xcr_7DQ","name":"STATE_STOP","brief":"","access":"public","defaultValue":"\"me.state.onStop\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event when the game is stopped
                \nData passed : none

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UOHpJ7S8UW6av4XSfuBj4","name":"TICK","brief":"","access":"public","defaultValue":"\"me.tick\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                event generated when the system update the engine and the renderer by one step

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cwzw_xtKBcAv-79Ev5sdK","name":"VIDEO_INIT","brief":"","access":"public","defaultValue":"\"me.video.onInit\"","readonly":true,"see":["video.init","event.on"],"type":"PropertyDoc","description":"

                event for when the video is initialized
                \nData passed : {Renderer} the renderer instance created

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TuvYoPDycWTw31bntbTB2","name":"VIEWPORT_ONCHANGE","brief":"","access":"public","defaultValue":"\"viewport.onchange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the viewport position is updated
                \nData passed : {me.Vector2d} viewport position vector

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Si7ahVZTCKLhhGsh4wUvb","name":"VIEWPORT_ONRESIZE","brief":"","access":"public","defaultValue":"\"viewport.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the viewport is resized
                \n(this usually follows a WINDOW_ONRESIZE event, when using the flexEvent for when the current context is lost
                \nData passed : {me.Renderer} the current renderer instance

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dBrlM1wRXwK9wKNsQc--p","name":"WINDOW_ONORIENTATION_CHANGE","brief":"","access":"public","defaultValue":"\"globalThis.orientationchange\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the device is rotated
                \nData passed : {Event} Event object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0kjYLmRHfrdLxO6iZ2N9A","name":"WINDOW_ONRESIZE","brief":"","access":"public","defaultValue":"\"globalThis.onresize\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the (browser) window is resized
                \nData passed : {Event} Event object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IeeuPDSvKxG2_FKfiyp_7","name":"WINDOW_ONSCROLL","brief":"","access":"public","defaultValue":"\"globalThis.onscroll\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the (browser) window is scrolled
                \nData passed : {Event} Event object

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"veuTnGWCccK4BljEf5VTv","name":"WORLD_STEP","brief":"","access":"public","defaultValue":"\"me.world.step\"","readonly":true,"see":["event.on"],"type":"PropertyDoc","description":"

                Event for when the physic world is updated\nData passed : {number} time the current time stamp

                ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RVX7MNx17m87JY224dy7n","name":"emit","brief":"","examples":[{"caption":"","code":"me.event.emit(\"event-name\", a, b, c);"}],"scope":"static","type":"FunctionDoc","description":"

                calls each of the listeners registered for a given event.

                ","params":[{"identifier":"eventName","optional":false,"description":"

                The event name.

                ","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

                arguments to be passed to all listeners

                ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                true if the event had listeners, false otherwise.

                ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pOFjd5RlHKdScu1f8FzNQ","name":"off","brief":"","access":"public","examples":[{"caption":"","code":"me.event.off(\"event-name\", myFunction);"}],"scope":"static","type":"FunctionDoc","description":"

                remove the given listener for a given event.

                ","params":[{"identifier":"eventName","optional":false,"description":"

                The event name.

                ","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

                The listener function.

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                this.

                ","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Tf1e-SLBDI-VWsMNCqmnF","name":"on","brief":"","access":"public","examples":[{"caption":"","code":"me.event.on(\"event-name\", myFunction, this);"}],"scope":"static","type":"FunctionDoc","description":"

                Add a listener for a given event.

                ","params":[{"identifier":"eventName","optional":false,"description":"

                The event name.

                ","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

                The listener function.

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"context","optional":true,"default":"this","description":"

                The context to invoke the listener with.

                ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

                this.

                ","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PZbul2vQvSkzllw3ae9BI","name":"once","brief":"","access":"public","examples":[{"caption":"","code":"me.event.once(\"event-name\", myFunction, this);"}],"scope":"static","type":"FunctionDoc","description":"

                Add a one-time listener for a given event.

                ","params":[{"identifier":"eventName","optional":false,"description":"

                The event name.

                ","dataType":{"tokens":[{"value":"string | symbol","kind":"canonical"},{"value":"symbol","kind":"canonical"}],"template":"string | %1"}},{"identifier":"listener","optional":false,"description":"

                The listener function.

                ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"context","optional":true,"default":"this","description":"

                The context to invoke the listener with.

                ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

                this.

                ","dataType":{"tokens":[{"value":"EventEmitter","kind":"canonical"},{"value":"EventEmitter","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"j4uY0QihhdngdW6JfENZQ","name":"game","brief":"","readonly":true,"see":["Application"],"type":"NSDoc","description":"

                game is a default instance of a melonJS Application and represents your current game,\nit contains all the objects, tilemap...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a0ww7PQuM0IiT_-6EU7tU","name":"input","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"e7jJVZS-3fF8_IRqmMtMi","name":"GAMEPAD","brief":"","access":"public","type":"NSDoc","description":"

                Namespace for standard gamepad mapping constants

                ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"4SdL6tIo-ulfqJggB6dcE","name":"AXES","brief":"","access":"public","scope":"static","see":["https://w3c.github.io/gamepad/#remapping"],"type":"EnumDoc","description":"

                Standard gamepad mapping information for axes

                \n
                  \n
                • Left control stick: LX (horizontal), Standard gamepad mapping information for buttons

                  \n
                    \n
                  • Face buttons: FACE_1, FACE_2standard keyboard constants

                    ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"pnvNey0aRslJr1oALuoWR","name":"A","brief":"","defaultValue":"65","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-a2BRbcGOxcWvAVAPvaG1","name":"ADD","brief":"","defaultValue":"107","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FBLnBL7fjBiM8G7DcSbMi","name":"ALT","brief":"","defaultValue":"18","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dxyNlMhq9kitZiXeWBXw4","name":"B","brief":"","defaultValue":"66","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SkkkozvPBDv_M7n_Ki9NW","name":"BACK_SLASH","brief":"","defaultValue":"220","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DmFDgu9ZPNJXDbWStG6Dk","name":"C","brief":"","defaultValue":"67","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vzdI6rx46vUcBgQTFKZAV","name":"CAPS_LOCK","brief":"","defaultValue":"20","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gLf24Bbegg2ZHG0Cs-b9k","name":"CLOSE_BRACKET","brief":"","defaultValue":"221","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Fv7Azu5Eu6ZKFtX9FRMKD","name":"COMMA","brief":"","defaultValue":"188","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eURB0nMMBQ8CC8bq6FRrR","name":"CTRL","brief":"","defaultValue":"17","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SQAQBaiZjC2_KbrTgadq3","name":"D","brief":"","defaultValue":"68","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"seaFrGJ1FZWt_FNzQ4fau","name":"DECIMAL","brief":"","defaultValue":"110","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ovRNl9RKbU4zTZq87lKLK","name":"DELETE","brief":"","defaultValue":"46","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"489rxzchVwxi1LL_PGnbM","name":"DIVIDE","brief":"","defaultValue":"111","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HVoZKtL8g_sJiTNZpCb9Z","name":"DOWN","brief":"","defaultValue":"40","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PaY6I9d3NV2pJJIQdDGGO","name":"E","brief":"","defaultValue":"69","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V11SnDgmYk117G20t8bCB","name":"END","brief":"","defaultValue":"35","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vvN8O03J0m8MLLReaHeX-","name":"ENTER","brief":"","defaultValue":"13","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cEBt6ACcAQ66ChCvQj8HJ","name":"ESC","brief":"","defaultValue":"27","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oVoDbTN-ZNUhlk6xEEBQV","name":"F","brief":"","defaultValue":"70","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ivgxD3wkh45JmIWo9FFi_","name":"F1","brief":"","defaultValue":"112","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HjrNV9mDpj0NkGlUVNhOI","name":"F10","brief":"","defaultValue":"121","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UIpXtbe3EDXV-mvjEewDr","name":"F11","brief":"","defaultValue":"122","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fe-nbwHGKxjeB4hQ4EMRN","name":"F12","brief":"","defaultValue":"123","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_ooWKzT0WnoNaJl9vpF9p","name":"F2","brief":"","defaultValue":"113","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kdM3ZoDfDH-yK5hh52W_p","name":"F3","brief":"","defaultValue":"114","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k7RJF6yU_64qhkmwXg36Z","name":"F4","brief":"","defaultValue":"115","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nuq7xiV0FvGwk1XxNldAx","name":"F5","brief":"","defaultValue":"116","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YxpmhO2BCKBlhuKRclqeq","name":"F6","brief":"","defaultValue":"117","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u04UjeRzNrZU_ROmWPHB8","name":"F7","brief":"","defaultValue":"118","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JIBap0b9LJDlxuxHDvvK2","name":"F8","brief":"","defaultValue":"119","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vu6unWM3l3Q-lNtzzrBO1","name":"F9","brief":"","defaultValue":"120","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HW_cKNcaPStTLanONLS5Y","name":"FORWAND_SLASH","brief":"","defaultValue":"191","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7LMiolDbSn1zz9K3PmVoO","name":"G","brief":"","defaultValue":"71","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FudmBqWYEzdRr9JYKZClP","name":"GRAVE_ACCENT","brief":"","defaultValue":"192","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"24SICDPSZr2hutm9lpwPj","name":"H","brief":"","defaultValue":"72","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"exQzTLa4Pqc6XPRKup-QK","name":"HOME","brief":"","defaultValue":"36","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IpY-V9-y2lPQDD-JqF9q2","name":"I","brief":"","defaultValue":"73","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lVRwxeNFx6Osmu56dBpbj","name":"INSERT","brief":"","defaultValue":"45","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Sp3GZjrhHRZaD6usWuTxt","name":"J","brief":"","defaultValue":"74","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9APuWrxIQKZnGF0AUHrZs","name":"K","brief":"","defaultValue":"75","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VsNTCx2MQ8ZyIGd089ePH","name":"L","brief":"","defaultValue":"76","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XT772juV0RXTA4PU149gl","name":"LEFT","brief":"","defaultValue":"37","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DzCve-HGsS7V9s-po0Cbj","name":"M","brief":"","defaultValue":"77","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"71pW7Z2E5SIKMarntcEDL","name":"MINUS","brief":"","defaultValue":"189","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vwd3-mmsF3zVAWuuS6jYx","name":"MULTIPLY","brief":"","defaultValue":"106","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x5NC21bftyeTygbnpaO_f","name":"N","brief":"","defaultValue":"78","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NvbC59UzdcwuAa9txttK0","name":"NUM_LOCK","brief":"","defaultValue":"144","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3DvbEW2V-1YJHvqlkW_M6","name":"NUM0","brief":"","defaultValue":"48","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9TdC-oyjaegYmExR0lZ76","name":"NUM1","brief":"","defaultValue":"49","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tkkCdR_mYrS6_avcu9Bln","name":"NUM2","brief":"","defaultValue":"50","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"199agavM0Wbb1rzXpLdVR","name":"NUM3","brief":"","defaultValue":"51","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5HzUDdxgo19ThTwZvhHDR","name":"NUM4","brief":"","defaultValue":"52","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fODUT3NPclVGyNxmwZabu","name":"NUM5","brief":"","defaultValue":"53","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g9Bd4vmxe6rnBYK7ineDJ","name":"NUM6","brief":"","defaultValue":"54","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4VxXswIEYbrHgYDOB9RmE","name":"NUM7","brief":"","defaultValue":"55","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2Do5DmekMwhjXMQqEeCVt","name":"NUM8","brief":"","defaultValue":"56","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CCnevEkO9ROMcp59K2aTx","name":"NUM9","brief":"","defaultValue":"57","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WLp-HyUckP-UQiskVmBB0","name":"NUMPAD0","brief":"","defaultValue":"96","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YdUyUozB33n3JMBQgW_Zt","name":"NUMPAD1","brief":"","defaultValue":"97","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5Q8_sJZPZ3BgAS2c8lVkk","name":"NUMPAD2","brief":"","defaultValue":"98","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eG0YlxjovDzb0Ha_F90RK","name":"NUMPAD3","brief":"","defaultValue":"99","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OmX3uicsLXslxmKyy6Aa-","name":"NUMPAD4","brief":"","defaultValue":"100","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CYrnvonvWN8WZM3-j55z8","name":"NUMPAD5","brief":"","defaultValue":"101","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0owCu7uoHdWdxL6e2vBvb","name":"NUMPAD6","brief":"","defaultValue":"102","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"elZ4wSE7hxlYtltaOsmBN","name":"NUMPAD7","brief":"","defaultValue":"103","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8Cv1KTWi1gCnUa_LjXD2u","name":"NUMPAD8","brief":"","defaultValue":"104","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ReOvLhIkw6QgcosqTO_1f","name":"NUMPAD9","brief":"","defaultValue":"105","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5iIRAmV_bKu0201DAzKh9","name":"O","brief":"","defaultValue":"79","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bIrAfP7XOcVbi6-dyIyf1","name":"OPEN_BRACKET","brief":"","defaultValue":"219","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yEeklP3LEKUiK329qzCxU","name":"P","brief":"","defaultValue":"80","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Me-Hkn9ZK5h5uWPeOsGTx","name":"PAGE_DOWN","brief":"","defaultValue":"34","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zhFK11ojckOM5POO5LOIs","name":"PAGE_UP","brief":"","defaultValue":"33","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8BTRM_qOTVEwoxLcRewXS","name":"PAUSE","brief":"","defaultValue":"19","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vY34Pud04q5H_nv17fgGU","name":"PERIOD","brief":"","defaultValue":"190","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XgWXplI2GdFmXgzkzLXwy","name":"PLUS","brief":"","defaultValue":"187","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oNsJCMkvSEtUQv40vNbOR","name":"PRINT_SCREEN","brief":"","defaultValue":"42","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iu6UVu08iQm_z2lF4Imil","name":"Q","brief":"","defaultValue":"81","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-4jdA2i6ds7TKm5ePE278","name":"R","brief":"","defaultValue":"82","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z-LbtIy-5P8QzCS7Msoub","name":"RIGHT","brief":"","defaultValue":"39","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Id5FjCHGcjPk4asbytnP1","name":"S","brief":"","defaultValue":"83","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"badNPKRlmn8Y-J8BdOsdd","name":"SCROLL_LOCK","brief":"","defaultValue":"145","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cOmbyMdHx1PP09e-smAY0","name":"SEMICOLON","brief":"","defaultValue":"186","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bgCCxTr5Ch-CDploLv964","name":"SHIFT","brief":"","defaultValue":"16","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ua4fCZ4HoJIcEAqgTasQl","name":"SINGLE_QUOTE","brief":"","defaultValue":"222","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lc6c1tVhWC_wYFIfby9ej","name":"SPACE","brief":"","defaultValue":"32","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zXAazTRc3QKX-zfZdhP85","name":"SUBSTRACT","brief":"","defaultValue":"109","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8f0SbY0tabo3aogh0Ccr2","name":"T","brief":"","defaultValue":"84","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gi1hDwK5QFG3DZFhS8dMj","name":"TAB","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TclSnDql-NkJnRuEjKeYu","name":"TILDE","brief":"","defaultValue":"126","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9HSsRbeWX3qeclYVUQRlF","name":"U","brief":"","defaultValue":"85","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rYEyhsswOqPZNOwcFjT1F","name":"UP","brief":"","defaultValue":"38","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iaT4jAJLMXjZej9-XUf7M","name":"V","brief":"","defaultValue":"86","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fOHAJhA6CEqz3HsW1qZJ_","name":"W","brief":"","defaultValue":"87","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oSfUwVUiOdkDVIygIy3Yu","name":"WINDOW_KEY","brief":"","defaultValue":"91","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UTj16NqygPYyHKUQvU26m","name":"X","brief":"","defaultValue":"88","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dgys7BHQL5amaf7AmYVx9","name":"Y","brief":"","defaultValue":"89","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OXkS7DZt5HDqPYzz5DSjS","name":"Z","brief":"","defaultValue":"90","scope":"static","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"U_MjWn1f7R61Mj7bP5idn","name":"keyBoardEventTarget","brief":"","access":"public","defaultValue":"undefined","type":"PropertyDoc","description":"

                    the default target element for keyboard events (usually the window element in which the game is running)

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3sFHUnfJDd_wQIiWvu-Q4","name":"locked","brief":"","access":"public","defaultValue":"false","type":"PropertyDoc","description":"

                    indicates if the pointer is currently locked

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-7lkBzWsdSVjS6e6aRoL9","name":"pointer","brief":"","access":"public","type":"PropertyDoc","description":"

                    Pointer information (current position and size)

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MuS9AZkqfBA0p112yirbj","name":"pointerEventTarget","brief":"","access":"public","defaultValue":"undefined","type":"PropertyDoc","description":"

                    the default target element for pointer events (usually the canvas element in which the game is rendered)

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Ilaer3gSBFTUPNhTknoQ","name":"preventDefault","brief":"","access":"public","defaultValue":"true","type":"PropertyDoc","description":"

                    specify if melonJS should prevent all default browser action on registered events.

                    ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZdZUxUrIIGk4rOvOJ38vp","name":"setGamepadMapping","brief":"","access":"public","examples":[{"caption":"","code":" // A weird controller that has its axis mappings reversed\n me.input.setGamepadMapping(\"Generic USB Controller\", {\n \"axes\" : [ 3, 2, 1, 0 ],\n \"buttons\" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 ]\n });\n\n // Mapping extra axes to analog buttons\n me.input.setGamepadMapping(\"Generic Analog Controller\", {\n \"axes\" : [ 0, 1, 2, 3 ],\n \"buttons\" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 ],\n\n // Raw axis 4 is mapped to GAMEPAD.BUTTONS.FACE_1\n // Raw axis 5 is mapped to GAMEPAD.BUTTONS.FACE_2\n // etc...\n // Also maps left and right triggers\n \"analog\" : [ 4, 5, 6, 7, -1, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1 ],\n\n // Normalize the value of button L2: [-1.0..1.0] => [0.0..1.0]\n \"normalize_fn\" : function (value, axis, button) {\n return ((button === me.input.GAMEPAD.BUTTONS.L2) ? ((value + 1) / 2) : value) || 0;\n }\n });"}],"type":"PropertyDoc","description":"

                    specify a custom mapping for a specific gamepad id
                    \nsee below for the default mapping :

                    \n
                    Gamepad id string

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"mapping","description":"

                    A hash table

                    ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"mapping.axes","description":"

                    Standard analog control stick axis locations

                    ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.buttons","description":"

                    Standard digital button locations

                    ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.analog","optional":true,"description":"

                    Analog axis locations for buttons

                    ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}},{"identifier":"mapping.normalize_fn","optional":true,"description":"

                    a function that returns a normalized value in range [-1.0..1.0] for the given value, axis and button

                    ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"H20i14scYlJsYHTsGqpaS","name":"throttlingInterval","brief":"","access":"public","type":"PropertyDoc","description":"

                    time interval for event throttling in milliseconds
                    \ndefault value : "1000/me.timer.maxfps" ms
                    \nset to 0 ms...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dAW2MakCl1fLTpZ0vLrf6","name":"bindGamepad","brief":"","access":"public","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.X, \"shoot\");\n...\n// map the lower face button on the first gamepad to the X key\nme.input.bindGamepad(0, {type:\"buttons\", code: me.input.GAMEPAD.BUTTONS.FACE_1}, me.input.KEY.X);\n// map the left axis value on the first gamepad to the LEFT key\nme.input.bindGamepad(0, {type:\"axes\", code: me.input.GAMEPAD.AXES.LX, threshold: -0.5}, me.input.KEY.LEFT);"}],"type":"FunctionDoc","description":"

                    Associate a gamepad event to a keycode

                    ","params":[{"identifier":"index","optional":false,"description":"

                    Gamepad index

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button","optional":false,"description":"

                    Button/Axis definition

                    ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"button.type","description":"

                    "buttons" or "axes"

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"button.code","description":"

                    button or axis code id (See {@link input.GAMEPAD.BUTTONS}, {@link input.GAMEPAD.AXES})

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button.threshold","optional":true,"default":"1","description":"

                    value indicating when the axis should trigger the keycode (e.g. -0.5 or 0.5)

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"keyCode","optional":false,"description":"

                    (See {@link input.KEY})

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kiF3fLEw4AIT2lAtYXzeN","name":"bindKey","brief":"","access":"public","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.LEFT, \"left\");\nme.input.bindKey(me.input.KEY.RIGHT, \"right\");\nme.input.bindKey(me.input.KEY.X, \"jump\", true);\nme.input.bindKey(me.input.KEY.F1, \"options\", true, true);"}],"type":"FunctionDoc","description":"

                    associate a user defined action to a keycode

                    ","params":[{"identifier":"keycode","optional":false,"description":"

                    (See {@link input.KEY})

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"action","optional":false,"description":"

                    user defined corresponding action

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"lock","optional":true,"default":"false","description":"

                    cancel the keypress event once read

                    ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"preventDefault","optional":true,"default":"input.preventDefault","description":"

                    prevent default browser action

                    ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ItDrFXS4sbQQkOJpcXNhc","name":"bindPointer","brief":"","examples":[{"caption":"","code":"// enable the keyboard\nme.input.bindKey(me.input.KEY.X, \"shoot\");\n// map the left button click on the X key (default if the button is not specified)\nme.input.bindPointer(me.input.KEY.X);\n// map the right button click on the X key\nme.input.bindPointer(me.input.pointer.RIGHT, me.input.KEY.X);"}],"type":"FunctionDoc","description":"

                    Associate a pointer event to a keycode
                    \nLeft button – 0\nMiddle button – 1\nRight button – 2

                    ","params":[{"identifier":"button","optional":true,"default":"input.pointer.LEFT","description":"

                    (accordingly to W3C values : 0,1,2 for left, middle and right buttons)

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"keyCode","dataType":{"tokens":[{"value":"input.KEY","kind":"canonical"},{"value":"input.KEY","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Az7N2OQGmdcILgMOtU2jQ","name":"exitPointerLock","brief":"","type":"FunctionDoc","description":"

                    Initiates an exit from pointer lock state

                    ","params":[],"returns":[{"description":"

                    return true if the request was successfully submitted

                    ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rWNDczoqpByCVgdmRheV5","name":"getBindingKey","brief":"","access":"public","type":"FunctionDoc","description":"

                    return the action associated with the given keycode

                    ","params":[{"identifier":"keycode","optional":false,"description":"

                    (See {@link input.KEY})

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                    user defined associated action

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"ktbvfMxKRLPrFKAvy5tU-","name":"globalToLocal","brief":"","examples":[{"caption":"","code":"onMouseEvent : function (pointer) {\n // convert the given into local (viewport) relative coordinates\n let pos = me.input.globalToLocal(pointer.clientX, pointer.clientY);\n // do something with pos !\n};"}],"type":"FunctionDoc","description":"

                    Translate the specified x and y values from the global (absolute)\ncoordinate to local (viewport) relative coordinate.

                    ","params":[{"identifier":"x","optional":false,"description":"

                    the global x coordinate to be translated.

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                    the global y coordinate to be translated.

                    ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                    an optional vector object where to set the translated coordinates

                    ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                    A vector object with the corresponding translated coordinates

                    ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N2xuB5OFYceKdGgoEwc7D","name":"hasActiveEvents","brief":"","type":"FunctionDoc","description":"

                    return true if there are pending pointer events in the queue

                    ","params":[],"returns":[{"description":"

                    true if there are pending events

                    "}],"extends":[],"implements":[]},{"id":"GhRf7Y9be7PqCtJzyqmR1","name":"hasRegisteredEvents","brief":"","see":["registerPointerEvent"],"type":"FunctionDoc","description":"

                    return true if there are register pointer events

                    ","params":[],"returns":[{"description":"

                    true if there are pending events

                    "}],"extends":[],"implements":[]},{"id":"JHh-gNlRQN5832K5Nd5pa","name":"isKeyPressed","brief":"","access":"public","examples":[{"caption":"","code":"if (me.input.isKeyPressed('left')) {\n //do something\n}\nelse if (me.input.isKeyPressed('right')) {\n //do something else...\n}"}],"type":"FunctionDoc","description":"

                    return the key press status of the specified action

                    ","params":[{"identifier":"action","optional":false,"description":"

                    user defined corresponding action

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                    true if pressed

                    ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"5Tc-oQ1_SyiM67xPK9U4L","name":"keyStatus","brief":"","access":"public","type":"FunctionDoc","description":"

                    return the key status of the specified action

                    ","params":[{"identifier":"action","optional":false,"description":"

                    user defined corresponding action

                    ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                    down (true) or up(false)

                    ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jjfH8G80GucNdVnX2Pb0E","name":"registerPointerEvent","brief":"","examples":[{"caption":"","code":" // onActivate function\n onActivateEvent: function () {\n // register on the 'pointerdown' event\n me.input.registerPointerEvent('pointerdown', this, (e) => this.pointerDown(e));\n },\n\n // pointerDown event callback\n pointerDown: function (pointer) {\n // do something\n ....\n // don\"t propagate the event to other objects\n return false;\n },"}],"see":["Pointer","{@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}"],"type":"FunctionDoc","description":"

                    allows registration of event listeners on the object target.
                    \nmelonJS will pass a me.Pointer object to the defined cal...","params":[{"identifier":"eventType","optional":false,"description":"

                    The event type for which the object is registering
                    \nmelonJS currently supports:

                    \n
                      \n
                    • \"pointermo...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"region","optional":false,"description":"

                      a shape representing the region to register on

                      ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"callback","optional":false,"description":"

                      methods to be called when the event occurs.\nReturning false from the defined callback will prevent the event ...","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"AZ5UY6zIDAAqGvW1vO22z","name":"releaseAllPointerEvents","brief":"","examples":[{"caption":"","code":"// release all registered event on the\nme.input.releaseAllPointerEvents(this);"}],"type":"FunctionDoc","description":"

                      allows the removal of all registered event listeners from the object target.

                      ","params":[{"identifier":"region","optional":false,"description":"

                      the registered region to release event from

                      ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[],"extends":[],"implements":[]},{"id":"T2L_E2peZc4gkJPlV0yJY","name":"releasePointerEvent","brief":"","examples":[{"caption":"","code":"// release the registered region on the 'pointerdown' event\nme.input.releasePointerEvent('pointerdown', this);"}],"see":["{@link http://www.w3.org/TR/pointerevents/#list-of-pointer-events|W3C Pointer Event list}"],"type":"FunctionDoc","description":"

                      allows the removal of event listeners from the object target.

                      ","params":[{"identifier":"eventType","optional":false,"description":"

                      The event type for which the object was registered. See {@link input.registerPointerEvent}

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"region","optional":false,"description":"

                      the registered region to release for this event

                      ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"callback","optional":true,"default":"\"all\"","description":"

                      if specified unregister the event only for the specific callback

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"gqOMaiMlOwo2arBZNfpRW","name":"requestPointerLock","brief":"","examples":[{"caption":"","code":"// register on the pointer lock change event\nevent.on(event.POINTERLOCKCHANGE, (locked)=> {\n console.log(\"pointer lock: \" + locked);\n});\n// request for pointer lock\nme.input.requestPointerLock();"}],"type":"FunctionDoc","description":"

                      request for the pointer to be locked on the parent DOM element.\n(Must be called in a click event or an event that requires...","params":[],"returns":[{"description":"

                      return true if the request was successfully submitted

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vyABdBy6YP6nd2qy6dSP6","name":"setGamepadDeadzone","brief":"","access":"public","type":"FunctionDoc","description":"

                      Set deadzone for analog gamepad inputs
                      \nThe default deadzone is 0.1 (10%) Analog values less than this will be ignored

                      ","params":[{"identifier":"value","optional":false,"description":"

                      Deadzone value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"c99uqoUPyG2Sjd-WtT0WZ","name":"setTouchAction","brief":"","see":["https://developer.mozilla.org/en-US/docs/Web/CSS/touch-action"],"type":"FunctionDoc","description":"

                      enable/disable all gestures on the given element.
                      \nby default melonJS will disable browser handling of all panning and ...","params":[{"identifier":"element","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"value","optional":true,"default":"\"none\"","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"VNYRe_rRIShC8-jA8ZyxR","name":"triggerKeyEvent","brief":"","access":"public","examples":[{"caption":"","code":"// trigger a key press\nme.input.triggerKeyEvent(me.input.KEY.LEFT, true);"}],"type":"FunctionDoc","description":"

                      trigger the specified key (simulated) event

                      ","params":[{"identifier":"keycode","optional":false,"description":"

                      (See {@link input.KEY})

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"status","optional":true,"default":"false","description":"

                      true to trigger a key down event, or false for key up event

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"mouseButton","optional":true,"description":"

                      the mouse button to trigger

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zEQGcEswMxvDfRFIzxh65","name":"unbindGamepad","brief":"","access":"public","examples":[{"caption":"","code":"me.input.unbindGamepad(0, me.input.GAMEPAD.BUTTONS.FACE_1);"}],"type":"FunctionDoc","description":"

                      unbind the defined keycode

                      ","params":[{"identifier":"index","optional":false,"description":"

                      Gamepad index

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"button","optional":false,"description":"

                      (See {@link input.GAMEPAD.BUTTONS})

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"-m2CZm02tIu3w8oBHqitY","name":"unbindKey","brief":"","access":"public","examples":[{"caption":"","code":"me.input.unbindKey(me.input.KEY.LEFT);"}],"type":"FunctionDoc","description":"

                      unbind the defined keycode

                      ","params":[{"identifier":"keycode","optional":false,"description":"

                      (See {@link input.KEY})

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"xkVJux4N0e80wFtb-0ssv","name":"unbindPointer","brief":"","examples":[{"caption":"","code":"me.input.unbindPointer(me.input.pointer.LEFT);"}],"type":"FunctionDoc","description":"

                      unbind the defined keycode

                      ","params":[{"identifier":"button","optional":true,"default":"input.pointer.LEFT","description":"

                      (accordingly to W3C values : 0,1,2 for left, middle and right buttons)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mqvkOMXDIG4TFa4UAq_X4","name":"unlockKey","brief":"","access":"public","examples":[{"caption":"","code":"// Unlock jump when touching the ground\nif (!this.falling && !this.jumping) {\n me.input.unlockKey(\"jump\");\n}"}],"type":"FunctionDoc","description":"

                      unlock a key manually

                      ","params":[{"identifier":"action","optional":false,"description":"

                      user defined corresponding action

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"wTb0SUxhmXcAy5J-E_vhp","name":"level","brief":"","type":"NSDoc","description":"

                      a level manager. once ressources loaded, the level manager contains all references of defined levels.

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"8ds6JBaWC2XXWdYAsPY_G","name":"add","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      add a level into the game manager (usually called by the preloader)

                      ","params":[{"identifier":"format","optional":false,"description":"

                      level format (only "tmx" supported)

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"levelId","optional":false,"description":"

                      the level id (or name)

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"callback","optional":true,"description":"

                      a function to be called once the level is loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                      true if the level was loaded

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AOfcIQWTdRMZ7o03s6L1Q","name":"getCurrentLevel","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return the current level definition.\nfor a reference to the live instantiated level,\nrather use the container in which it ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gwMOJ56k5riM5gyd_d0MU","name":"getCurrentLevelId","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return the current level id

                      ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"Z7FzLEBINE8MNnnThWg6P","name":"levelCount","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return the amount of level preloaded

                      ","params":[],"returns":[{"description":"

                      the amount of level preloaded

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F_5KUl3A9QfRmiwBT8pvy","name":"load","brief":"","access":"public","examples":[{"caption":"","code":" // the game assets to be be preloaded\n // TMX maps\n let resources = [\n {name: \"a4_level1\", type: \"tmx\", src: \"data/level/a4_level1.tmx\"},\n {name: \"a4_level2\", type: \"tmx\", src: \"data/level/a4_level2.tmx\"},\n {name: \"a4_level3\", type: \"tmx\", src: \"data/level/a4_level3.tmx\"},\n // ...\n ];\n\n // ...\n\n // load a level into the game world\n me.level.load(\"a4_level1\");\n ...\n ...\n // load a level into a specific container\n let levelContainer = new me.Container();\n me.level.load(\"a4_level2\", {container:levelContainer});\n // add a simple transformation\n levelContainer.currentTransform.translate(levelContainer.width / 2, levelContainer.height / 2 );\n levelContainer.currentTransform.rotate(0.05);\n levelContainer.currentTransform.translate(-levelContainer.width / 2, -levelContainer.height / 2 );\n // add it to the game world\n me.game.world.addChild(levelContainer);"}],"scope":"instance","type":"MethodDoc","description":"

                      load a level into the game manager
                      \n(will also create all level defined entities, etc..)

                      ","params":[{"identifier":"levelId","optional":false,"description":"

                      level id

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options","optional":true,"description":"

                      additional optional parameters

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

                      container in which to load the specified level

                      ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

                      callback for when the level is fully loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

                      if true, flatten all objects into the given container

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"options.setViewportBounds","optional":true,"default":"true","description":"

                      if true, set the viewport bounds to the map size

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                      true if the level was successfully loaded

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"N91MIp4NIZ66mPUKsKCfC","name":"next","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      load the next level

                      ","params":[{"identifier":"options","optional":true,"description":"

                      additional optional parameters

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

                      container in which to load the specified level

                      ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

                      callback for when the level is fully loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

                      if true, flatten all objects into the given container

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                      true if the next level was successfully loaded

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9Pf-FEU6z-LqoQxaT1Zuv","name":"previous","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      load the previous level

                      ","params":[{"identifier":"options","optional":true,"description":"

                      additional optional parameters

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

                      container in which to load the specified level

                      ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

                      callback for when the level is fully loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

                      if true, flatten all objects into the given container

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                      true if the previous level was successfully loaded

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Zri8Hin7yKfXFT9Rv3fjV","name":"reload","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      reload the current level

                      ","params":[{"identifier":"options","optional":true,"description":"

                      additional optional parameters

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.container","optional":true,"default":"game.world","description":"

                      container in which to load the specified level

                      ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"options.onLoaded","optional":true,"default":"game.onLevelLoaded","description":"

                      callback for when the level is fully loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"options.flatten","optional":true,"default":"game.mergeGroup","description":"

                      if true, flatten all objects into the given container

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                      the current level

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]}]},{"id":"BnthQeC1do0Efbhx9gjxX","name":"loader","brief":"","type":"NSDoc","description":"

                      a small class to manage loading of stuff and manage resources

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"a34J8xRlqVeIEmlmGL0DO","name":"Asset","brief":"","examples":[{"caption":"","code":"// PNG tileset\n{name: \"tileset-platformer\", type: \"image\", src: \"data/map/tileset.png\"}\n// PNG packed texture\n{name: \"texture\", type:\"image\", src: \"data/gfx/texture.png\"}\n// PNG base64 encoded image\n{name: \"texture\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"}\n// TSX file\n{name: \"meta_tiles\", type: \"tsx\", src: \"data/map/meta_tiles.tsx\"}\n// TMX level (XML & JSON)\n{name: \"map1\", type: \"tmx\", src: \"data/map/map1.json\"}\n{name: \"map2\", type: \"tmx\", src: \"data/map/map2.tmx\"}\n{name: \"map3\", type: \"tmx\", format: \"json\", data: {\"height\":15,\"layers\":[...],\"tilewidth\":32,\"version\":1,\"width\":20}}\n{name: \"map4\", type: \"tmx\", format: \"xml\", data: {xml representation of tmx}}\n// audio resources\n{name: \"bgmusic\", type: \"audio\", src: \"data/audio/\"}\n{name: \"cling\", type: \"audio\", src: \"data/audio/\"}\n// base64 encoded audio resources\n{name: \"band\", type: \"audio\", src: \"data:audio/wav;base64,...\"}\n// binary file\n{name: \"ymTrack\", type: \"binary\", src: \"data/audio/main.ym\"}\n// JSON file (used for texturePacker)\n{name: \"texture\", type: \"json\", src: \"data/gfx/texture.json\"}\n// JavaScript file\n{name: \"plugin\", type: \"js\", src: \"data/js/plugin.js\"}\n// Font Face\n{ name: \"'kenpixel'\", type: \"fontface\", src: \"url('data/font/kenvector_future.woff2')\" }"}],"scope":"static","see":["loader.preload","loader.load"],"type":"TypedefDoc","description":"

                      an asset definition to be used with the loader

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"VlxBA59RwIv0WQufZ6Hvf","name":"data","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      TMX data if not provided through a src url

                      "},{"id":"itva87Ke7q4p8llV4XRVP","name":"name","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      name of the asset

                      "},{"id":"2TKcUFAAKx9okqpaiSDuJ","name":"src","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      path and/or file name of the resource (for audio assets only the path is required)

                      "},{"id":"jAGniXqTXp2ymbCK0eSo9","name":"stream","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Set to true to force HTML5 Audio, which allows not to wait for large file to be downloaded before playing.

                      "},{"id":"WNOB47-7tKROIbqYqKMsq","name":"type","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                      the type of the asset ("audio"|"binary"|"image"|"json"|"js"|"tmx&qu..."}]},{"id":"X9ZxH_1usNd_SqJPXaQ4z","name":"crossOrigin","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":" // allow for cross-origin texture loading in WebGL\n me.loader.crossOrigin = \"anonymous\";\n\n // set all ressources to be loaded\n me.loader.preload(game.resources, () => this.loaded());"}],"see":["https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes"],"type":"PropertyDoc","description":"

                      crossOrigin attribute to configure the CORS requests for Image data element.\nBy default (that is, when the attribute is no...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5rqcZMVRWO0035816pQNW","name":"onload","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback when everything is loaded\nme.loader.onload = this.loaded.bind(this);"}],"type":"PropertyDoc","description":"

                      onload callback

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MGx1fiR-YvGLemPvTzJkR","name":"onProgress","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// set a callback for progress notification\nme.loader.onProgress = this.updateProgress.bind(this);"}],"type":"PropertyDoc","description":"

                      onProgress callback
                      \neach time a resource is loaded, the loader will fire the specified function,\ngiving the actual pro...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8kYvvTBo4PGg91rNL4HmL","name":"withCredentials","brief":"","access":"public","defaultValue":"false","examples":[{"caption":"","code":" // enable withCredentials\n me.loader.withCredentials = true;\n\n // set all ressources to be loaded\n me.loader.preload(game.resources, () => this.loaded());"}],"see":["https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials"],"type":"PropertyDoc","description":"

                      indicates whether or not cross-site Access-Control requests should be made using credentials such as cookies,\nauthorizatio...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8Ob-pMO1dsOxuT--IbSwG","name":"getBinary","brief":"","type":"FunctionDoc","description":"

                      return the specified Binary object

                      ","params":[{"identifier":"elt","optional":false,"description":"

                      name of the binary object ("ymTrack");

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      requested element or null if not found

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"ZpsYqpwi-SZ1cCVsvRfeb","name":"getImage","brief":"","type":"FunctionDoc","description":"

                      return the specified Image Object

                      ","params":[{"identifier":"image","optional":false,"description":"

                      name of the Image element ("tileset-platformer");

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      requested element or null if not found

                      ","dataType":{"tokens":[{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BmNMhh3AeFql4NmrkUWSa","name":"getJSON","brief":"","type":"FunctionDoc","description":"

                      return the specified JSON Object

                      ","params":[{"identifier":"elt","optional":false,"description":"

                      name of the json file to load

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"YKOQ8j-u828n0PnE68jbU","name":"getTMX","brief":"","type":"FunctionDoc","description":"

                      return the specified TMX/TSX object

                      ","params":[{"identifier":"elt","optional":false,"description":"

                      name of the tmx/tsx element ("map1");

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      requested element or null if not found

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"wep3joBh7L_1k8Po2uns7","name":"load","brief":"","examples":[{"caption":"","code":"// load an image asset\nme.loader.load({name: \"avatar\", type:\"image\", src: \"data/avatar.png\"}, () => this.onload(), () => this.onerror());\n// load a base64 image asset\n me.loader.load({name: \"avatar\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"};\n// start loading music\nme.loader.load({\n name : \"bgmusic\",\n type : \"audio\",\n src : \"data/audio/\"\n}, function () {\n me.audio.play(\"bgmusic\");\n});"}],"type":"FunctionDoc","description":"

                      Load a single asset (to be used if you need to load additional asset(s) during the game)

                      ","params":[{"identifier":"asset","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}},{"identifier":"onload","optional":true,"description":"

                      function to be called when the asset is loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"onerror","optional":true,"description":"

                      function to be called in case of error

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                      the amount of corresponding resource to be preloaded

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8DbFtGG4zWDdRb03kAEiX","name":"preload","brief":"","examples":[{"caption":"","code":"game.assets = [\n // PNG tileset\n {name: \"tileset-platformer\", type: \"image\", src: \"data/map/tileset.png\"},\n // PNG packed texture\n {name: \"texture\", type:\"image\", src: \"data/gfx/texture.png\"}\n // PNG base64 encoded image\n {name: \"texture\", type:\"image\", src: \"data:image/png;base64,iVBORw0KAAAQAAAAEACA...\"}\n // TSX file\n {name: \"meta_tiles\", type: \"tsx\", src: \"data/map/meta_tiles.tsx\"},\n // TMX level (XML & JSON)\n {name: \"map1\", type: \"tmx\", src: \"data/map/map1.json\"},\n {name: \"map2\", type: \"tmx\", src: \"data/map/map2.tmx\"},\n {name: \"map3\", type: \"tmx\", format: \"json\", data: {\"height\":15,\"layers\":[...],\"tilewidth\":32,\"version\":1,\"width\":20}},\n {name: \"map4\", type: \"tmx\", format: \"xml\", data: {xml representation of tmx}},\n // audio resources\n {name: \"bgmusic\", type: \"audio\", src: \"data/audio/\"},\n {name: \"cling\", type: \"audio\", src: \"data/audio/\"},\n // base64 encoded audio resources\n {name: \"band\", type: \"audio\", src: \"data:audio/wav;base64,...\"},\n // binary file\n {name: \"ymTrack\", type: \"binary\", src: \"data/audio/main.ym\"},\n // JSON file (used for texturePacker)\n {name: \"texture\", type: \"json\", src: \"data/gfx/texture.json\"},\n // JavaScript file\n {name: \"plugin\", type: \"js\", src: \"data/js/plugin.js\"},\n // Font Face\n { name: \"'kenpixel'\", type: \"fontface\", src: \"url('data/font/kenvector_future.woff2')\" }\n];\n...\n// set all resources to be loaded\nme.loader.preload(game.assets, () => this.loaded());"}],"type":"FunctionDoc","description":"

                      set all the specified game assets to be preloaded.

                      ","params":[{"identifier":"assets","optional":false,"description":"

                      list of assets to load

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1<%2>"}},{"identifier":"onloadcb","optional":true,"default":"loader.onload","description":"

                      function to be called when all resources are loaded

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"switchToLoadState","optional":true,"default":"true","description":"

                      automatically switch to the loading screen

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"bC7XrDAZthyvdE0feRibJ","name":"setBaseURL","brief":"","access":"public","examples":[{"caption":"","code":"// change the base URL relative address for audio assets\nme.loader.setBaseURL(\"audio\", \"data/audio/\");\n// change the base URL absolute address for all object types\nme.loader.setBaseURL(\"*\", \"http://myurl.com/\")"}],"type":"FunctionDoc","description":"

                      change the default baseURL for the given asset type.
                      \n(this will prepend the asset URL and must finish with a '/')

                      ","params":[{"identifier":"type","optional":false,"description":"

                      "*", "audio", binary", "image", "json", "js", "tmx", &quo...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"url","optional":true,"default":"\"./\"","description":"

                      default base URL

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"ltNanY6u19fjFig6t0Rod","name":"setParser","brief":"","examples":[{"caption":"","code":"// specify a custom function for \"abc\" format\nfunction customAbcParser(data, onload, onerror) {\n // preload and do something with the data\n let parsedData = doSomething(data);\n // when done, call the onload callback with the parsed data\n onload(parsedData);\n // in case of error, call the onerror callback\n onerror();\n // return the amount of asset parsed\n return 1\n}\n// set the parser for the custom format\nloader.setParser(\"abc\", customAbcParser);"}],"see":["loader.Asset.type"],"type":"FunctionDoc","description":"

                      specify a parser/preload function for the given asset type

                      ","params":[{"identifier":"type","optional":false,"description":"

                      asset type

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"parserFn","optional":false,"description":"

                      parser function

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"y8FRY5DiHENi9UVwYuf1o","name":"unload","brief":"","examples":[{"caption":"","code":"me.loader.unload({name: \"avatar\", type:\"image\"});"}],"type":"FunctionDoc","description":"

                      unload the specified asset to free memory

                      ","params":[{"identifier":"asset","optional":false,"dataType":{"tokens":[{"value":"loader.Asset","kind":"canonical"},{"value":"loader.Asset","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                      true if unloaded

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MB3DuEn2dEy7S-qGNzrQz","name":"unloadAll","brief":"","examples":[{"caption":"","code":"me.loader.unloadAll();"}],"type":"FunctionDoc","description":"

                      unload all resources to free memory

                      ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"629rC1S5ZAyPImL6bZ15U","name":"Math","brief":"","type":"NSDoc","description":"

                      a collection of math utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"cjPgh4iDsdeWxMG_3cW98","name":"DEG_TO_RAD","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                      constant to convert from degrees to radians

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GoqfXCaOfWYm1vsVn6SeU","name":"EPSILON","brief":"","access":"public","defaultValue":"0.000001","readonly":true,"type":"PropertyDoc","description":"

                      the difference between 1 and the smallest floating point number greater than 1

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FqaETYlJ_qvYRgh1X-wLC","name":"ETA","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                      constant equals to half pi

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3BKr6iiEemOZKf1ffZi60","name":"RAD_TO_DEG","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                      constant to convert from radians to degrees

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4WQS9FyFbwZvys8zVGPwB","name":"TAU","brief":"","access":"public","readonly":true,"type":"PropertyDoc","description":"

                      constant equals to 2 times pi

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RltV2n_X6gEchQK_7bgaS","name":"clamp","brief":"","access":"public","type":"FunctionDoc","description":"

                      clamp the given value

                      ","params":[{"identifier":"val","optional":false,"description":"

                      the value to clamp

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"low","optional":false,"description":"

                      lower limit

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"description":"

                      higher limit

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      clamped value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uI8NbqMo_44Tgci3SDe7R","name":"degToRad","brief":"","access":"public","examples":[{"caption":"","code":"// convert a specific angle\nme.Math.degToRad(60); // return 1.0471..."}],"type":"FunctionDoc","description":"

                      Converts an angle in degrees to an angle in radians

                      ","params":[{"identifier":"angle","optional":false,"description":"

                      angle in degrees

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      corresponding angle in radians

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TsAMRIh38Y0MAq6ohQ41h","name":"isPowerOfTwo","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns true if the given value is a power of two

                      ","params":[{"identifier":"val","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"w6r4fkwC38sZEoHF5AOAp","name":"nextPowerOfTwo","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns the next power of two for the given value

                      ","params":[{"identifier":"val","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-V45CcibBFQrT1zzPzZrs","name":"radToDeg","brief":"","access":"public","examples":[{"caption":"","code":"// convert a specific angle\nme.Math.radToDeg(1.0471975511965976); // return 60"}],"type":"FunctionDoc","description":"

                      Converts an angle in radians to an angle in degrees.

                      ","params":[{"identifier":"radians","optional":false,"description":"

                      angle in radians

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      corresponding angle in degrees

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jg2d49C7hzIMj8X_Xm4ba","name":"random","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.random(5, 10) );"}],"type":"FunctionDoc","description":"

                      return a random integer between min (included) and max (excluded)

                      ","params":[{"identifier":"min","optional":false,"description":"

                      minimum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

                      maximum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      random value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wlcs5PdI5huE0PgynboFp","name":"randomFloat","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.randomFloat(5, 10) );"}],"type":"FunctionDoc","description":"

                      return a random float between min, max (exclusive)

                      ","params":[{"identifier":"min","optional":false,"description":"

                      minimum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

                      maximum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      random value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bMp2xtkJcHjO1wa89Fu7k","name":"round","brief":"","access":"public","examples":[{"caption":"","code":"// round a specific value to 2 digits\nme.Math.round(10.33333, 2); // return 10.33"}],"type":"FunctionDoc","description":"

                      round a value to the specified number of digit

                      ","params":[{"identifier":"num","optional":false,"description":"

                      value to be rounded.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dec","optional":true,"default":"0","description":"

                      number of decimal digit to be rounded to.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      rounded value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Heg9WfI8840giQ1hiiBmr","name":"toBeCloseTo","brief":"","access":"public","examples":[{"caption":"","code":"// test if the given value is close to 10\nif (me.Math.toBeCloseTo(10, value)) {\n // do something\n}"}],"type":"FunctionDoc","description":"

                      check if the given value is close to the expected one

                      ","params":[{"identifier":"expected","optional":false,"description":"

                      value to be compared with.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"actual","optional":false,"description":"

                      actual value to compare

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"precision","optional":true,"default":"2","description":"

                      float precision for the comparison

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      if close to

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"M0tXm4kDPfykEIkGcXk52","name":"weightedRandom","brief":"","access":"public","examples":[{"caption":"","code":"// Print a random number; one of 5, 6, 7, 8, 9\nconsole.log(me.Math.weightedRandom(5, 10) );"}],"type":"FunctionDoc","description":"

                      return a weighted random between min, max (exclusive)

                      ","params":[{"identifier":"min","optional":false,"description":"

                      minimum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":false,"description":"

                      maximum value.

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      random value

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"rREksqce1xVmffhVq1fob","name":"ParticleEmitterSettings","brief":"","readonly":true,"see":["ParticleEmitter"],"type":"NSDoc","description":"

                      ParticleEmitterSettings contains the default settings for ParticleEmitter

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"XbQvpFroxx0AHfNV9JJs7","name":"angle","brief":"","access":"public","defaultValue":"Math.PI / 2","scope":"static","type":"PropertyDoc","description":"

                      Start angle for particle launch in Radians

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vl2GKf08OwvuxNb3KR8j6","name":"angleVariation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      letiation in the start angle for particle launch in Radians.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2OtlfmwVmLN5z68JqDXbJ","name":"blendMode","brief":"","access":"public","defaultValue":"normal","scope":"static","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                      the blend mode to be applied when rendering particles.\n(note: this will superseed the textureAdditive setting...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C0e_DTAJiUpu2yrsPYfQt","name":"duration","brief":"","access":"public","defaultValue":"Infinity","scope":"static","type":"PropertyDoc","description":"

                      Duration that the emitter releases particles in ms (used only if emitter is Stream).\nAfter this period, the emitter stop t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7QxHbnE1CODb_NGpGH0Ui","name":"floating","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Render particles in screen space.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ig2x0FNeJYVHm4uJZ4IBI","name":"followTrajectory","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      Update the rotation of particle in accordance the particle trajectory.
                      \nThe particle sprite should aim at zero angle (d...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q7SS9dcxk_DJhRzBtCjjP","name":"framesToSkip","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Skip n frames after updating the particle system once.\nThis can be used to reduce the performance impact of emitters with ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rw3jPeluTgaX6B_EF4mFj","name":"frequency","brief":"","access":"public","defaultValue":"100","scope":"static","type":"PropertyDoc","description":"

                      How often a particle is emitted in ms (used only if emitter is a Stream).

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SqihSuCV98oC9YYktgocs","name":"gravity","brief":"","access":"public","defaultValue":"0","scope":"static","see":["game.world.gravity"],"type":"PropertyDoc","description":"

                      Vertical force (Gravity) for each particle

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"23JBAU031nFDu-B4lexzR","name":"height","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      Height of the particle spawn area

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yUYiBMthl1aff2tQ3HZ-B","name":"image","brief":"","access":"public","defaultValue":"undefined","scope":"static","see":["ParticleEmitterSettings.textureSize"],"type":"PropertyDoc","description":"

                      image used for particles texture\n(by default melonJS will create an white 8x8 texture image)

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZgrW_Fx3XpK_F6_Syo6Lq","name":"maxEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Maximum end scale ratio for particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FSE-nhxqycd7uKDm-WC-u","name":"maxLife","brief":"","access":"public","defaultValue":"3000","scope":"static","type":"PropertyDoc","description":"

                      Maximum time each particle lives once it is emitted in ms.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ICsG6JxP8XgD-LOsAOXil","name":"maxParticles","brief":"","access":"public","defaultValue":"10","scope":"static","type":"PropertyDoc","description":"

                      Maximum number of particles launched each time in this emitter (used only if emitter is Stream).

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3YfgX7_xZqfOeoOiEkxmg","name":"maxRotation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Maximum start rotation for particles sprites in Radians

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rxHQf757MarTcZ7FMqZNg","name":"maxStartScale","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      Maximum start scale ratio for particles (1 = no scaling)

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4_9JgBmQPXh9HV9xTky-u","name":"minEndScale","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Minimum end scale ratio for particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8Ls_nsmh75Whv905kEg2e","name":"minLife","brief":"","access":"public","defaultValue":"1000","scope":"static","type":"PropertyDoc","description":"

                      Minimum time each particle lives once it is emitted in ms.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o7W1ByadZHYMwnkRWpOj2","name":"minRotation","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Minimum start rotation for particles sprites in Radians

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lLDU1h5vobgBMyJBFxuzc","name":"minStartScale","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      Minimum start scale ratio for particles (1 = no scaling)

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zmjON-FnNP_wWXT8Wnftr","name":"onlyInViewport","brief":"","access":"public","defaultValue":"true","scope":"static","type":"PropertyDoc","description":"

                      Update particles only in the viewport, remove it when out of viewport.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dpgyFdFFdIm5SznWWr6ro","name":"speed","brief":"","access":"public","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

                      Start speed of particles.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dE2RzcUSaY71HcYWIQea1","name":"speedVariation","brief":"","access":"public","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      letiation in the start speed of particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1nVmnsMVvtNtMXwHqDylF","name":"textureAdditive","brief":"","access":"public","defaultValue":"false","scope":"static","see":["ParticleEmitterSettings.blendMode"],"type":"PropertyDoc","description":"

                      Enable the Texture Additive by composite operation ("additive" blendMode)

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TTGCw8yUj02j8vJAikGwv","name":"textureSize","brief":"","access":"public","defaultValue":"8","scope":"static","see":["ParticleEmitterSettings.image"],"type":"PropertyDoc","description":"

                      default texture size used for particles if no image is specified\n(by default melonJS will create an white 8x8 texture imag...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m3bp4Hk0iwgr_jWEcfPUY","name":"tint","brief":"","access":"public","defaultValue":"\"#fff\"","scope":"static","type":"PropertyDoc","description":"

                      tint to be applied to particles

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MkXgDSsuHo0OhECZG78-Q","name":"totalParticles","brief":"","access":"public","defaultValue":"50","scope":"static","type":"PropertyDoc","description":"

                      Total number of particles in the emitter

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XHIZaWsTQIhmXsbNVxAIv","name":"width","brief":"","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      Width of the particle spawn area.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TUsFXENIoipcBkX8W30PF","name":"wind","brief":"","access":"public","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      Horizontal force (like a Wind) for each particle

                      ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"9USi3XNBkWYcvFvJ1exn4","name":"plugin","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"qJeUOaoswRXSYTTP9D0gO","name":"Base","brief":"","deprecated":"since 15.1.6, see {@link plugin.BasePlugin}","type":"ClassDoc","params":[],"returns":[],"extends":["plugin.BasePlugin"],"implements":[],"members":[{"id":"m607v-zlHjyigQtH2SXDI","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                      a reference to the app/game that registered this plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Zm9ciYSizRa-ZUwrB34n","name":"version","brief":"","defaultValue":"\"__VERSION__\"","scope":"instance","type":"PropertyDoc","description":"

                      define the minimum required version of melonJS
                      \nthis can be overridden by the plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"bXKtU_3nivwfwC0LDV8Va","name":"BasePlugin","brief":"","type":"ClassDoc","description":"

                      a base Object class for plugin\n(plugin must be installed using the register function)

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"WaX3yklCeFxIJKB8u6ucB","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                      a reference to the app/game that registered this plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HgcxAjra-jz6VgwanzkIr","name":"version","brief":"","defaultValue":"\"__VERSION__\"","scope":"instance","type":"PropertyDoc","description":"

                      define the minimum required version of melonJS
                      \nthis can be overridden by the plugin

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8zGPwwmpeG8v6s3v4cKKG","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"app","optional":true,"description":"

                      a reference to the app/game that registered this plugin

                      ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"G4h6RYurgrfu3bC27-_9V","name":"cache","brief":"","type":"PropertyDoc","description":"

                      Contains all registered plugins.

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IRBwT4myEepEIgQ-3EnL7","name":"get","brief":"","type":"FunctionDoc","description":"

                      returns the the plugin instance with the specified class type or registered name

                      ","params":[{"identifier":"classType","optional":false,"description":"

                      the Class Object or registered name of the plugin to retreive

                      ","dataType":{"tokens":[{"value":"object | string","kind":"canonical"}],"template":"object | string"}}],"returns":[{"description":"

                      a plugin instance or undefined

                      ","dataType":{"tokens":[{"value":"BasePlugin","kind":"canonical"},{"value":"BasePlugin","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rSTKGjq_phkMA7LkQmeOk","name":"patch","brief":"","examples":[{"caption":"","code":"// redefine the me.game.update function with a new one\nme.plugin.patch(me.game, \"update\", function () {\n // display something in the console\n console.log(\"duh\");\n // call the original me.game.update function\n this._patched();\n});"}],"type":"FunctionDoc","description":"

                      patch a melonJS function

                      ","params":[{"identifier":"proto","optional":false,"description":"

                      target object

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"name","optional":false,"description":"

                      target function

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"fn","optional":false,"description":"

                      replacement function

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"JpCtNyZoWAn-iLWuPPTqD","name":"register","brief":"","examples":[{"caption":"","code":"// register a new plugin\nme.plugin.register(TestPlugin, \"testPlugin\");\n// the `testPlugin` class instance can also be accessed through me.plugin.cache\nme.plugin.cache.testPlugin.myfunction ();"}],"type":"FunctionDoc","description":"

                      Register a plugin.

                      ","params":[{"identifier":"plugin","optional":false,"description":"

                      Plugin object to instantiate and register

                      ","dataType":{"tokens":[{"value":"plugin.BasePlugin","kind":"canonical"},{"value":"plugin.BasePlugin","kind":"link"}],"template":"%1"}},{"identifier":"name","optional":true,"default":"plugin.constructor.name","description":"

                      a unique name for this plugin

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

                      all extra parameters will be passed to the plugin constructor

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"3EKKAgPJmHif7J29wbiOU","name":"pool","brief":"","examples":[{"caption":"","code":"// register our bullet object into the object pool\npool.register(\"bullet\", BulletEntity, true);\n// ...\n// when we need to manually create a new bullet:\nlet bullet = pool.pull(\"bullet\", x, y, direction, velocity);\n// ...\n// when we want to destroy existing object, the remove\n// function will ensure the object can then be reallocated later\ngame.world.removeChild(bullet);"}],"see":["ObjectPool"],"type":"NSDoc","description":"

                      a default global ObjectPool instance

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LdpgXvTYzF_Me20KZqK2V","name":"save","brief":"","examples":[{"caption":"","code":" // Initialize \"score\" and \"lives\" with default values\n // This loads the properties from localStorage if they exist, else it sets the given defaults\n me.save.add({ score : 0, lives : 3 });\n\n // Print all\n // On first load, this prints { score : 0, lives : 3 }\n // On further reloads, it prints { score : 31337, lives : 3, complexObject : ... }\n // Because the following changes will be saved to localStorage\n console.log(JSON.stringify(me.save));\n\n // Save score\n me.save.score = 31337;\n\n // Also supports complex objects thanks to the JSON backend\n me.save.add({ complexObject : {} })\n me.save.complexObject = { a : \"b\", c : [ 1, 2, 3, \"d\" ], e : { f : [{}] } };\n\n // WARNING: Do not set any child properties of complex objects directly!\n // Changes made that way will not save. Always set the entire object value at once.\n // If you cannot live with this limitation, there's a workaround:\n me.save.complexObject.c.push(\"foo\"); // Modify a child property\n me.save.complexObject = me.save.complexObject; // Save the entire object!\n\n // Remove \"lives\" from localStorage\n me.save.remove(\"lives\");"}],"type":"NSDoc","description":"

                      allow to access and manage the device localStorage

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"hds290Nb4ivU-oscVh71y","name":"add","brief":"","examples":[{"caption":"","code":"// Initialize \"score\" and \"lives\" with default values\nme.save.add({ score : 0, lives : 3 });\n// get or set the value through me.save\nme.save.score = 1000;"}],"scope":"instance","type":"MethodDoc","description":"

                      Add new keys to localStorage and set them to the given default values if they do not exist

                      ","params":[{"identifier":"props","optional":false,"description":"

                      key and corresponding values

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"1gvzt6oY6SLXGQAt4O23Z","name":"remove","brief":"","examples":[{"caption":"","code":"// Remove the \"score\" key from localStorage\nme.save.remove(\"score\");"}],"scope":"instance","type":"MethodDoc","description":"

                      Remove a key from localStorage

                      ","params":[{"identifier":"key","optional":false,"description":"

                      key to be removed

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"8Os7STXmIvLQ9NtBkkR7y","name":"state","brief":"","type":"NSDoc","description":"

                      a State Manager (state machine)

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"oyPy3JQsVSmIfb-JtBsvh","name":"CREDITS","brief":"","defaultValue":"7","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Credits Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vVmIVblVYHi_wyZt-eOvY","name":"DEFAULT","brief":"","defaultValue":"9","scope":"static","type":"PropertyDoc","description":"

                      default state ID for the default Stage\n(the default stage is the one running as soon as melonJS is started)

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OHQduiY6guCweUG8Qxeqp","name":"GAME_END","brief":"","defaultValue":"5","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Game End Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N9r8UYDWzxun9brFiLNfY","name":"GAMEOVER","brief":"","defaultValue":"4","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Game Over Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ng12x94ENJqrZEfRxXiz2","name":"LOADING","brief":"","defaultValue":"0","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Loading Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tEuiNneqmOZSfGnbpkUmj","name":"MENU","brief":"","defaultValue":"1","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Menu Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a-r6EstPBq1AAevcxLG5-","name":"PLAY","brief":"","defaultValue":"3","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Play Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XyKOtFLfN8yntxKismOQf","name":"READY","brief":"","defaultValue":"2","scope":"static","type":"PropertyDoc","description":"

                      default state ID for "Ready" Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1MZIRCjKY-Lgy4gEEuV9x","name":"SCORE","brief":"","defaultValue":"6","scope":"static","type":"PropertyDoc","description":"

                      default state ID for High Score Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c27Zeej0KQ4TjiZt4eGmg","name":"SETTINGS","brief":"","defaultValue":"8","scope":"static","type":"PropertyDoc","description":"

                      default state ID for Settings Stage

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DBEfXY38DA66GVJXXOtzf","name":"USER","brief":"","defaultValue":"100","examples":[{"caption":"","code":"let STATE_INFO = me.state.USER + 0;\nlet STATE_WARN = me.state.USER + 1;\nlet STATE_ERROR = me.state.USER + 2;\nlet STATE_CUTSCENE = me.state.USER + 3;"}],"scope":"static","type":"PropertyDoc","description":"

                      default state ID for user defined constants

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D7eYfi--d1l-Xd7BWuhSA","name":"change","brief":"","access":"public","examples":[{"caption":"","code":"// The onResetEvent method on the play screen will receive two args:\n// \"level_1\" and the number 3\nme.state.change(me.state.PLAY, \"level_1\", 3);"}],"scope":"instance","type":"MethodDoc","description":"

                      change the game/app state

                      ","params":[{"identifier":"state","optional":false,"description":"

                      State ID (see constants)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"forceChange","optional":false,"description":"

                      if true the state will be changed immediately

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

                      extra arguments to be passed to the reset functions

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"MaiHLoDfRq_qhWKuZIvwA","name":"current","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return a reference to the current stage
                      \nuseful to call a object specific method

                      ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LFTJ5DiTXsASpuNoduArW","name":"isCurrent","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return true if the specified state is the current one

                      ","params":[{"identifier":"state","optional":false,"description":"

                      State ID (see constants)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      true if the specified state is the current one

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XHujI4ezD0XM6E5ZFCZ-l","name":"isPaused","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      Return the pause state of the state manager

                      ","params":[],"returns":[{"description":"

                      true if the game is paused

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0LaM7V3gdE7pEm1uKmmCE","name":"isRunning","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      return the running state of the state manager

                      ","params":[],"returns":[{"description":"

                      true if a "process is running"

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TxtPv2gskCYe4qYqBVdQK","name":"pause","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      pause the current stage

                      ","params":[{"identifier":"music","optional":true,"default":"false","description":"

                      pause current music track on screen pause

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"UTpVvUWib-9GpkzRmp08h","name":"restart","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      Restart the current stage from a full stop.

                      ","params":[{"identifier":"music","optional":true,"default":"false","description":"

                      resume current music track on screen resume

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"gR8p3QcJBzWdxOfqu5_kS","name":"resume","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      resume the current stage

                      ","params":[{"identifier":"music","optional":true,"default":"false","description":"

                      resume current music track on screen resume

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"6WmUmOTKfdGlxgg_l0mtH","name":"set","brief":"","access":"public","examples":[{"caption":"","code":" class MenuButton extends me.GUI_Object {\n onClick() {\n // Change to the PLAY state when the button is clicked\n me.state.change(me.state.PLAY);\n return true;\n }\n };\n\n class MenuScreen extends me.Stage {\n onResetEvent() {\n // Load background image\n me.game.world.addChild(\n new me.ImageLayer(0, 0, {\n image : \"bg\",\n z: 0 // z-index\n }\n );\n\n // Add a button\n me.game.world.addChild(\n new MenuButton(350, 200, { \"image\" : \"start\" }),\n 1 // z-index\n );\n\n // Play music\n me.audio.playTrack(\"menu\");\n }\n\n onDestroyEvent() {\n // Stop music\n me.audio.stopTrack();\n }\n };\n\n me.state.set(me.state.MENU, new MenuScreen());"}],"scope":"instance","type":"MethodDoc","description":"

                      associate the specified state with a Stage

                      ","params":[{"identifier":"state","optional":false,"description":"

                      State ID (see constants)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"stage","optional":false,"description":"

                      Instantiated Stage to associate with state ID

                      ","dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}},{"identifier":"start ","optional":true,"default":" false","description":"

                      if true the state will be changed immediately after adding it.

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"feYi2tuPjdBIpNz2rtbOD","name":"set","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      returns the stage associated with the specified state\n(or the current one if none is specified)

                      ","params":[{"identifier":"state","optional":true,"description":"

                      State ID (see constants)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Stage","kind":"canonical"},{"value":"Stage","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NSFn8WrHBrG5no5EZA_I1","name":"setTransition","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      enable/disable the transition to a particular state (by default enabled for all)

                      ","params":[{"identifier":"state","optional":false,"description":"

                      State ID (see constants)

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":false,"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"nHvfn9aqYOTQ1R_JZyqPC","name":"stop","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      Stop the current stage.

                      ","params":[{"identifier":"pauseTrack","optional":true,"default":"false","description":"

                      pause current track on screen stop.

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"A8Kf_BpyLRfbf2ziCFYFO","name":"transition","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                      specify a global transition effect

                      ","params":[{"identifier":"effect","optional":false,"description":"

                      (only "fade" is supported for now)

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"color","optional":false,"description":"

                      a CSS color value

                      ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

                      expressed in milliseconds

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"lmwLAAZuqfWck3cHWlPyH","name":"timer","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" after 1000ms\ntimer.setTimeout(myFunction, 1000);\n// set a timer to call \"myFunction\" after 1000ms (respecting the pause state) and passing param1 and param2\ntimer.setTimeout(myFunction, 1000, true, param1, param2);\n// set a timer to call \"myFunction\" every 1000ms\ntimer.setInterval(myFunction, 1000);\n// set a timer to call \"myFunction\" every 1000ms (respecting the pause state) and passing param1 and param2\ntimer.setInterval(myFunction, 1000, true, param1, param2);"}],"see":["Timer"],"type":"NSDoc","description":"

                      the default global Timer instance

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VQt79jCwlVzLg8rSCcX15","name":"TMXUtils","brief":"","type":"NSDoc","description":"

                      a collection of utility functions for parsing TMX maps

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"nyjMdvSfkIFJCs7SlD9ct","name":"applyTMXProperties","brief":"","type":"FunctionDoc","description":"

                      Apply TMX Properties to the given object

                      ","params":[{"identifier":"obj","optional":false,"description":"

                      object to apply the properties to

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"data","optional":false,"description":"

                      TMX data object

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                      obj

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"53f4Q4X5IBi34Y7pRHx9n","name":"decode","brief":"","type":"FunctionDoc","description":"

                      Decode a encoded array into a binary array

                      ","params":[{"identifier":"data","optional":false,"description":"

                      data to be decoded

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"encoding","optional":true,"default":"\"none\"","description":"

                      data encoding ("csv", "base64", "xml")

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      Decoded data

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"3S2LcDsmio1uOJz4Was1O","name":"decodeBase64AsArray","brief":"","type":"FunctionDoc","description":"

                      Decode a base64 encoded string into a byte array

                      ","params":[{"identifier":"input","optional":false,"description":"

                      Base64 encoded data

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"bytes","optional":true,"default":"1","description":"

                      number of bytes per array entry

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      Decoded data

                      ","dataType":{"tokens":[{"value":"Uint32Array","kind":"canonical"},{"value":"Uint32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SXjTPjawPnH2EmRkjvKrd","name":"decodeCSV","brief":"","type":"FunctionDoc","description":"

                      Decode a CSV encoded array into a binary array

                      ","params":[{"identifier":"input-","optional":false,"description":"

                      CSV formatted data (only numbers, everything else will be converted to NaN)

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      Decoded data

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"6Ljsu1RU2dFWYVMVCOXY5","name":"decompress","brief":"","type":"FunctionDoc","description":"

                      decompress and decode zlib/gzip data

                      ","params":[{"identifier":"input","optional":false,"description":"

                      Base64 encoded and compressed data

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"format","optional":false,"description":"

                      compressed data format ("gzip","zlib", "zstd")

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      Decoded and decompress data

                      ","dataType":{"tokens":[{"value":"Uint32Array","kind":"canonical"},{"value":"Uint32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QLdXX49SzuqUVIH3wfmex","name":"parse","brief":"","type":"FunctionDoc","description":"

                      Parse a XML TMX object and returns the corresponding javascript object

                      ","params":[{"identifier":"xml","optional":false,"description":"

                      XML TMX object

                      ","dataType":{"tokens":[{"value":"Document","kind":"canonical"},{"value":"Document","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      Javascript object

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"_RH3HFjN_k3wAUyUTSaz0","name":"setInflateFunction","brief":"","type":"FunctionDoc","description":"

                      set the function used to inflate gzip/zlib data

                      ","params":[{"identifier":"fn","optional":false,"description":"

                      inflate function

                      ","dataType":{"tokens":[{"value":"Func","kind":"canonical"},{"value":"Func","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"yBZmhExTnl5axJ9qzVJIn","name":"utils","brief":"","defaultValue":"\"\"","type":"NSDoc","description":"

                      a collection of utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"cnSCRAaAP7LYwWK8jnFGt","name":"agent","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of utility functons to ease porting between different user agents.

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"0VEsu9X8IHMU7YdKILXgg","name":"prefixed","brief":"","access":"public","type":"FunctionDoc","description":"

                      Get a vendor-prefixed property

                      ","params":[{"identifier":"name","optional":false,"description":"

                      Property name

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"obj","optional":true,"default":"globalThis","description":"

                      Object or element reference to access

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                      Value of property

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"GYovVBkj-uAm9NAaZsYmg","name":"setPrefixed","brief":"","access":"public","type":"FunctionDoc","description":"

                      Set a vendor-prefixed property

                      ","params":[{"identifier":"name","optional":false,"description":"

                      Property name

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                      Property value

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"obj","optional":true,"default":"globalThis","description":"

                      Object or element reference to access

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                      true if one of the vendor-prefixed property was found

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"v6QD_FRO3TBS0OQ8kA_HF","name":"array","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of array utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Jq4akCSRGK9t_qDBSP9ry","name":"random","brief":"","access":"public","examples":[{"caption":"","code":"// Select a random array element\nlet arr = [ \"foo\", \"bar\", \"baz\" ];\nconsole.log(me.utils.array.random(arr));"}],"type":"FunctionDoc","description":"

                      return a random array element

                      ","params":[{"identifier":"arr","optional":false,"description":"

                      array to pick a element

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"returns":[{"description":"

                      random member of array

                      ","dataType":{"tokens":[{"value":"any","kind":"canonical"}],"template":"any"}}],"extends":[],"implements":[]},{"id":"4PhNSBn8u39p-Uhj5dWIL","name":"remove","brief":"","access":"public","type":"FunctionDoc","description":"

                      Remove the specified object from the given Array

                      ","params":[{"identifier":"arr","optional":false,"description":"

                      array from which to remove an object

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}},{"identifier":"obj","optional":false,"description":"

                      to be removed

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                      the modified Array\nlet arr = [ "foo", "bar", "baz" ];\n// remove "foo" from the arr...","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"extends":[],"implements":[]},{"id":"4mPKyO8eeLYYJdNVOmcHu","name":"weightedRandom","brief":"","access":"public","type":"FunctionDoc","description":"

                      return a weighted random array element, favoring the earlier entries

                      ","params":[{"identifier":"arr","optional":false,"description":"

                      array to pick a element

                      ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2 | string | Object>"}}],"returns":[{"description":"

                      random member of array

                      ","dataType":{"tokens":[{"value":"any","kind":"canonical"}],"template":"any"}}],"extends":[],"implements":[]}]},{"id":"KRLOQecB2VzkQZRwMATJO","name":"file","brief":"","defaultValue":"undefined","readonly":true,"scope":"static","type":"NSDoc","description":"

                      a collection of file utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"aQnJ7hz34RglYP9OungV_","name":"getBasename","brief":"","access":"public","type":"FunctionDoc","description":"

                      return the base name of the file without path info

                      ","params":[{"identifier":"path","optional":false,"description":"

                      path containing the basename to extract

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      the base name without path information.

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"s1loQD6oIKK20mONhH-uM","name":"getExtension","brief":"","access":"public","type":"FunctionDoc","description":"

                      return the extension of the file in the given path

                      ","params":[{"identifier":"path","optional":false,"description":"

                      path containing the filename and extension to extract

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      filename extension.

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"9eD5c6rjRCJjjdTnln1NF","name":"getPath","brief":"","access":"public","type":"FunctionDoc","description":"

                      return the path of the file

                      ","params":[{"identifier":"path","optional":false,"description":"

                      the copmplete file path to extract the path from

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      the extracted path

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"yUdJGkfXTew3DeWcEvvj2","name":"function","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"2zqfl1C_pb6GEXyzpN68r","name":"defer","brief":"","access":"public","examples":[{"caption":"","code":"// execute myFunc() when the stack is empty,\n// with the current context and [1, 2, 3] as parameter\nme.utils.function.defer(myFunc, this, 1, 2, 3);"}],"type":"FunctionDoc","description":"

                      Executes a function as soon as the interpreter is idle (stack empty).

                      ","params":[{"identifier":"func","optional":false,"description":"

                      The function to be deferred.

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":false,"description":"

                      The value to be passed as the this parameter to the target function when the deferred function is called

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"args","optional":false,"variadic":true,"description":"

                      Optional additional arguments to carry for the function.

                      ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

                      id that can be used to clear the deferred function using\nclearTimeout

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hIpvicwb2CZTgD40R1J5-","name":"throttle","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns a function that, when invoked will only be triggered at most once during a given window of time

                      ","params":[{"identifier":"fn","optional":false,"description":"

                      the function to be throttled.

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

                      The delay in ms

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"no_trailing","optional":false,"description":"

                      disable the execution on the trailing edge

                      ","dataType":{"tokens":[{"value":"no_trailing","kind":"canonical"},{"value":"no_trailing","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                      the function that will be throttled

                      ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"extends":[],"implements":[]}]},{"id":"I9-fwBH7Pt-Ml6B_ygrcG","name":"string","brief":"","scope":"static","type":"NSDoc","description":"

                      a collection of string utility functions

                      ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"yVCLVQPfVqUJsZ2zQKP24","name":"capitalize","brief":"","access":"public","type":"FunctionDoc","description":"

                      converts the first character of the given string to uppercase

                      ","params":[{"identifier":"str","optional":false,"description":"

                      the string to be capitalized

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      the capitalized string

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"wmriIvfHWcgCqyMj6poBf","name":"isBoolean","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns true if the given string contains a true or false

                      ","params":[{"identifier":"str","optional":false,"description":"

                      the string to be tested

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      true if the string is either true or false

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"88rE24hkOfFGo1CGfu7JO","name":"isDataUrl","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns true if the given string is a data url in the data:[<mediatype>][;base64],<data> format.\n...","params":[{"identifier":"str","optional":false,"description":"

                      the string (url) to be tested

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      true if the string is a data url

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JX53MnqR568tlytu0GwDT","name":"isNumeric","brief":"","access":"public","type":"FunctionDoc","description":"

                      returns true if the given string contains a numeric integer or float value

                      ","params":[{"identifier":"str","optional":false,"description":"

                      the string to be tested

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      true if string contains only digits

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NaAwjdbQT4N7cP4bHmObC","name":"toHex","brief":"","access":"public","type":"FunctionDoc","description":"

                      convert a string to the corresponding hexadecimal value

                      ","params":[{"identifier":"str","optional":false,"description":"

                      the string to be converted

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      the converted hexadecimal value

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"edI6bJgtF7qhJzVQ5lKrp","name":"checkVersion","brief":"","access":"public","examples":[{"caption":"","code":"if (me.utils.checkVersion(\"7.0.0\") > 0) {\n console.error(\n \"melonJS is too old. Expected: 7.0.0, Got: 6.3.0\"\n );\n}"}],"type":"FunctionDoc","description":"

                      Compare two version strings

                      ","params":[{"identifier":"first","optional":false,"description":"

                      First version string to compare

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"second","optional":false,"description":"

                      second version string to compare

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      comparison result
                      < 0 : first < second
                      \n0 : first == second
                      \n> 0 : first > second

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Dja50hLWnvHcfuHjGjNoN","name":"getUriFragment","brief":"","access":"public","examples":[{"caption":"","code":"// http://www.example.com/index.html#debug&hitbox=true&mytag=value\nlet UriFragment = me.utils.getUriFragment();\nconsole.log(UriFragment[\"mytag\"]); //> \"value\""}],"type":"FunctionDoc","description":"

                      parse the fragment (hash) from a URL and returns them into

                      ","params":[{"identifier":"url","optional":true,"default":"document.location","description":"

                      an optional params string or URL containing fragment (hash) params to be parsed

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                      an object representing the deserialized params string.

                      ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[],"members":[{"id":"JIQodYjYaJZmmP0TcszHQ","name":"debug","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      display the debug panel (if preloaded)

                      "},{"id":"Aeq99zmfNQpYxWWgFcRTU","name":"debugToggleKey","brief":"","access":"public","defaultValue":"\"s\"","scope":"static","type":"PropertyDoc","description":"

                      show/hide the debug panel (if preloaded)

                      "},{"id":"h6T5N6_obO6uCp1Dy4aqd","name":"hitbox","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      draw the hitbox in the debug panel (if enabled)

                      "},{"id":"Jb2bqbeNlYqxlqVXbTxBG","name":"quadtree","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      draw the quadtree in the debug panel (if enabled)

                      "},{"id":"pW0IH-376ge11uSWGdNNI","name":"velocity","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      draw the entities velocity in the debug panel (if enabled)

                      "},{"id":"Zl-vvleggvrzKpRc_coBq","name":"webgl","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      force the renderer to WebGL

                      "}]}]},{"id":"ss84n1TxxeVXjzzUoUxwu","name":"video","brief":"","type":"NSDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"lnVXyp822MtziiC7Enj0g","name":"renderer","brief":"","defaultValue":"undefined","type":"PropertyDoc","description":"

                      A reference to the active Canvas or WebGL active renderer renderer

                      ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2i4GLL3s252cjJAXyMKsg","name":"createCanvas","brief":"","type":"FunctionDoc","description":"

                      Create and return a new Canvas element

                      ","params":[{"identifier":"width","optional":false,"description":"

                      width

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                      height

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"returnOffscreenCanvas","optional":true,"default":"false","description":"

                      will return an OffscreenCanvas if supported

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                      a new Canvas element of the given size

                      ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"gNH1ICmP0QGcFxr1SGhWm","name":"getParent","brief":"","type":"FunctionDoc","description":"

                      return a reference to the parent DOM element holding the main canvas

                      ","params":[],"returns":[{"description":"

                      the HTML parent element

                      ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GfqIaevGcbPoM3DW05aTG","name":"init","brief":"","examples":[{"caption":"","code":"// init the video with a 640x480 canvas\nme.video.init(640, 480, {\n parent : \"screen\",\n renderer : me.video.AUTO,\n scale : \"auto\",\n scaleMethod : \"fit\"\n});"}],"type":"FunctionDoc","description":"

                      Initialize the "video" system (create a canvas based on the given arguments, and the related renderer).

                      ","params":[{"identifier":"width","optional":false,"description":"

                      The width of the canvas viewport

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                      The height of the canvas viewport

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

                      optional parameters for the renderer

                      ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                      false if initialization failed (canvas not supported)

                      ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"69SpiLtEWBYIEb74rvuR7","name":"Application","brief":"","see":["game"],"type":"ClassDoc","description":"

                      An Application represents a single melonJS game, and is responsible for updating (each frame) all the related object statu...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"DWLiuhz-hcNLIvEGM2MwQ","name":"Settings","brief":"","see":["Application"],"type":"TypedefDoc","description":"

                      Application & Renderer Settings definition.

                      ","params":[{"identifier":"options.zoomX","optional":true,"default":"width","description":"

                      The actual width of the canvas with scaling applied

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.zoomY","optional":true,"default":"height","description":"

                      The actual height of the canvas with scaling applied

                      ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.compositor","optional":true,"description":"

                      a custom compositor class (WebGL only)

                      ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}},{"identifier":"option.physic","optional":true,"default":"\"builtin\"","description":"

                      the physic system to use (default: "builtin", or "none" to disable builtin physic)

                      ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[],"members":[{"id":"fzO5I7sqUUpN6shokbCB7","name":"antiAlias","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      whether to enable or not video scaling interpolation

                      "},{"id":"7mMriBl3WR3GTVfLzbwJa","name":"consoleHeader","brief":"","access":"public","defaultValue":"true","scope":"static","type":"PropertyDoc","description":"

                      whether to display melonJS version and basic device information in the console

                      "},{"id":"mOdIZBbqNsWBv8t63KI4F","name":"depthTest","brief":"","access":"public","defaultValue":"\"sorting\"","scope":"static","type":"PropertyDoc","description":"

                      ~Experimental~ the default method to sort object on the z axis in WebGL

                      "},{"id":"2ZUJdec_30St_ljLBDrdx","name":"parent","brief":"","access":"public","defaultValue":"document.body","scope":"static","type":"PropertyDoc","description":"

                      the DOM parent element to hold the canvas in the HTML file

                      "},{"id":"hFrKcJb9S4BRclrBY1x81","name":"powerPreference","brief":"","access":"public","defaultValue":"\"default\"","scope":"static","type":"PropertyDoc","description":"

                      a hint to the user agent indicating what configuration of GPU is suitable for the WebGL context. To be noted that Safari a..."},{"id":"UMzEeetTkN1U2CYLzrcID","name":"preferWebGL1","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                      if true the renderer will only use WebGL 1

                      "},{"id":"E5fDnuXqcyhay2y9EhnK_","name":"renderer","brief":"","access":"public","defaultValue":"AUTO","scope":"static","type":"PropertyDoc","description":"

                      renderer to use (CANVAS, WEBGL, AUTO), or a custom renderer class

                      "},{"id":"e3DA-xyXIvG41-Rbjeqa1","name":"scale","brief":"","access":"public","defaultValue":"1.0","scope":"static","type":"PropertyDoc","description":"

                      enable scaling of the canvas ('auto' for automatic scaling)

                      "},{"id":"tPCPzLa7vX4ZZ3-nMNHJL","name":"scaleMethod","brief":"","access":"public","defaultValue":"\"fit\"","scope":"static","type":"PropertyDoc","description":"

                      screen scaling modes :

                      \n
                        \n
                      • fit : Letterboxed; content is scaled to design aspect ..."},{"id":"MW3yT6T5Tfqng0TGySj00","name":"scaleTarget","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        the HTML Element to be used as the reference target when using automatic scaling (by default melonJS will use the parent c..."},{"id":"Cf38QBzhCguwTF-qlMS6f","name":"transparent","brief":"","access":"public","defaultValue":"false","scope":"static","type":"PropertyDoc","description":"

                        whether to allow transparent pixels in the front buffer (screen).

                        "}]},{"id":"N4_mPGv_ebYfg93WPBNSP","name":"isInitialized","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        true when this app instance has been initialized

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fZ6Q_9p8U-h3uaWWlXg9G","name":"lastUpdate","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                        Last time the game update loop was executed.
                        \nUse this value to implement frame prediction in drawing events,\nfor crea...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iC997d4pH3tvDnQHSy09g","name":"mergeGroup","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        when true, all objects will be added under the root world container.
                        \nWhen false, a me.Container object wi...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eukpNrPE5h5eKVFkwTO0d","name":"parentElement","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the parent HTML element holding the main canvas of this application

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6WdQ8maCkpGp81lafvcas","name":"pauseOnBlur","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// keep the default game instance running even when loosing focus\nme.game.pauseOnBlur = false;"}],"scope":"instance","type":"PropertyDoc","description":"

                        Specify whether to pause this app when losing focus

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TDAmItVSRtvTV5KzAIhAJ","name":"renderer","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the active Canvas or WebGL active renderer renderer

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DRh7sCt6MBrJqBAp06Jcx","name":"resumeOnFocus","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        Specify whether to unpause this app when gaining back focus

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RlZw2zmRVQSCI-HKn0mlR","name":"settings","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the given settings used when creating this application

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MvywuyGYF1nIqJZDHP6ZL","name":"sortOn","brief":"","scope":"instance","see":["World.sortOn"],"type":"PropertyDoc","description":"

                        Specify the property to be used when sorting renderables for this application game world.\nAccepted values : "x",...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w-YB76tDumFO6HuUR7q1q","name":"stopOnBlur","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Specify whether to stop this app when losing focus

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9KuBwA-ocQWyljnjv-8zw","name":"viewport","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the active stage "default" camera

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xa0YcObjTbW-oF5W58-Xe","name":"world","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the game world,
                        \na world is a virtual environment containing all the game objects

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gQWJ8o9_rtDJXoWejKW3L","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"width","optional":false,"description":"

                        The width of the canvas viewport

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        The height of the canvas viewport

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

                        The optional parameters for the application and default renderer

                        ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1o77U6IblX1djtFirN8jr","name":"draw","brief":"

                        draw the active scene/stage associated to this game

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YtipBYgDNoFu3LUslrJcX","name":"getParentElement","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns the parent HTML Element holding the main canvas of this application

                        ","params":[],"returns":[{"description":"

                        the parent HTML element

                        ","dataType":{"tokens":[{"value":"HTMLElement","kind":"canonical"},{"value":"HTMLElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0rk_kADPDwTTKQqoNa1UZ","name":"init","brief":"","scope":"instance","type":"MethodDoc","description":"

                        init the game instance (create a physic world, update starting time, etc..)

                        ","params":[{"identifier":"width","optional":false,"description":"

                        The width of the canvas viewport

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        The height of the canvas viewport

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options","optional":true,"description":"

                        The optional parameters for the application and default renderer

                        ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8dlBkc1pkbtPXb34fA6EP","name":"onLevelLoaded","brief":"","examples":[{"caption":"","code":"// call myFunction () everytime a level is loaded\nme.game.onLevelLoaded = this.myFunction.bind(this);"}],"scope":"instance","type":"MethodDoc","description":"

                        Fired when a level is fully loaded and all renderable instantiated.
                        \nAdditionnaly the level id will also be passed to ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aff9dn6KSYDTO7vJqFCyf","name":"repaint","brief":"

                        force the redraw (not update) of all objects

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bdBwDjwwigJMMpMLuV9Sf","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

                        reset the game Object manager\ndestroy all current objects

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D85Ld6W_qxB1uMqO2OAyO","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                        update all objects related to this game active scene/stage

                        ","params":[{"identifier":"time","optional":false,"description":"

                        current timestamp as provided by the RAF callback

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AEGgxzrtD41ddGcAPC8B_","name":"updateFrameRate","brief":"","scope":"instance","see":["timer.maxfps","World.fps"],"type":"MethodDoc","description":"

                        Update the renderer framerate using the system config variables.

                        ","params":[],"returns":[],"extends":[],"implements":[]}]},{"id":"hrDZTbblStVdV0_-1pqi_","name":"BitmapText","brief":"","type":"ClassDoc","description":"

                        a bitmap font object

                        ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"gAolvs0b8lx5LeJkjRUOM","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                        Define the renderable opacity
                        \nSet to zero if you do not wish an object to be drawn

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WO9vl2ImfHbiF8BXZEXSY","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether the renderable object will always update, even when outside of the viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"me7UrxnR511Y6ovCxMBnD","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the parent object that contains this renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"arjcOEHfysBZl_kfpIRbj","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                        The anchor point is used for attachment behavior, and/or when applying transformations.
                        \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KVhUVdP5D2JcKa6kc-gGW","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                        When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VCeZkCG9tpTpkKJ4dwD31","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                        the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"31u8_CKxjPvRo3wPIQhzV","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                        the renderable physic body

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OQwoF-yTcr8Fd-UuB6P3J","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sKuowDpZW3PhGNE_UoBUn","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the horizontal axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D7cm5a4f5OlIgIRxA4vQx","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the vertical axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8twfGs0hpx1zEJGiA9XWI","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the renderable default transformation matrix

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8F9nZ0SumS_gVy2MqsTtz","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the depth of this renderable on the z axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x5JmyvnqWw0F0ecPw_XQ9","name":"fillStyle","brief":"","access":"public","scope":"instance","see":["Renderable#tint"],"type":"PropertyDoc","description":"

                        defines the color used to tint the bitmap text

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PjxsS9WFO8f_ShaCYvzpK","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5TOkUox_XEoaWuLpw2TBn","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        (G)ame (U)nique (Id)entifier"
                        \na GUID will be allocated for any renderable object added
                        \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DIXHltf8AOdSs54fejUb4","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        height of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SHUDJQSE6AwY-sPCZJa8E","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether the renderable object is visible and within the viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"erwsk2c3L4cqupvB5oGTP","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        when true the renderable will be redrawn during the next update cycle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I_havCgWV_2ZGHqEZ1NKC","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                        returns true if this renderable is flipped on the horizontal axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nU2RAd7tB6QoKTh94Bccj","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                        returns true if this renderable is flipped on the vertical axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f-LCSVHIGqdYdR1kdLdNE","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                        Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oqAtkJHRV4bcTGeAVAlGb","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        If true then physic collision and input events will not impact this renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iQXFIoSEILYSzFRsSrtj0","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        make the renderable object persistent over level changes

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FEOT1cUOTReBbU4xnPARA","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        left coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NW_cSXN31zcyBNeUt-JsL","name":"lineHeight","brief":"","access":"public","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

                        Set the line spacing height (when displaying multi-line strings).
                        \nCurrent font height will be multiplied with this va...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aV-9Sv5N8ORNFXyXFJAsi","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                        A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WK3ckbbk9aYm2yj3SbKDg","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                        The name of the renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"omdq2mVMC3H_O_3T-NMmx","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                        an event handler that is called when the renderable leave or enter a camera viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1435ThasTN-sEzz54UQMM","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        Array of points defining the Polygon
                        \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nu9tqbZYG9w0z2wBMYhti","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Position of the Renderable relative to its parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kx_44nFYWJFDCJ3vpKyFP","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TR24YWh-Q4xQUMTV_rYeH","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                        (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6VG1n7asYYgnO2fUGi6b-","name":"textAlign","brief":"","access":"public","defaultValue":"\"left\"","scope":"instance","type":"PropertyDoc","description":"

                        Set the default text alignment (or justification),
                        \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1U_DKJ_bCtmReJDJaw0SL","name":"textBaseline","brief":"","access":"public","defaultValue":"\"top\"","scope":"instance","type":"PropertyDoc","description":"

                        Set the text baseline (e.g. the Y-coordinate for the draw operation),
                        \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HmeiWrq4Re2tL8Co-aUGK","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                        define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SxWqQkDmvepm2SiN8Ls3z","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        top coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"An1AsKEiDh0TzkZccMBlv","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                        the shape type (used internally)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CJC-x5w9U0Br8L35z5fqm","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether to update this object when the game is paused.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"B8qelHZflEjRB09KCcsB8","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_IZOZGBzB0ZYZbR_PyBhf","name":"wordWrapWidth","brief":"","access":"public","defaultValue":"-1","scope":"instance","type":"PropertyDoc","description":"

                        the maximum length in CSS pixel for a single segment of text.\n(use -1 to disable word wrapping)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o5_eLBzMT-6X6s4I1ZYgj","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        the text to be displayed

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WQPf9hwyYmyBN04sBlNSA","name":"fontData","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        font data

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SWxqyggnHg5RCzBYrllOn","name":"fontImage","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        font image

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n060DRC1CtnzdkV-_BC3P","name":"fontScale","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                        scaled font size

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hbSJK8AB8W9-n2Jdz_NPG","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the angle to the specified target

                        ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        angle in radians

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5R0T_on_jzwScC02aBLU8","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                        center the rectangle position around the given coordinates

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the x coordinate around which to center this rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the y coordinate around which to center this rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"owA5fIhtSn2vdaEVIBDnI","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                        clone this rectangle

                        ","params":[],"returns":[{"description":"

                        new rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0qiAwXedFp5o7sLCBcfpk","name":"constructor","brief":"","examples":[{"caption":"","code":"// Use me.loader.preload or me.loader.load to load assets\nme.loader.preload([\n { name: \"arial\", type: \"binary\" src: \"data/font/arial.fnt\" },\n { name: \"arial\", type: \"image\" src: \"data/font/arial.png\" },\n])\n// Then create an instance of your bitmap font:\nlet myFont = new me.BitmapText(x, y, {font:\"arial\", text:\"Hello\"});\n// two possibilities for using \"myFont\"\n// either call the draw function from your Renderable draw function\nmyFont.draw(renderer, \"Hello!\", 0, 0);\n// or just add it to the word container\nme.game.world.addChild(myFont);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                        position of the text object

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        position of the text object

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                        the text configuration

                        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.font","description":"

                        a font name to identify the corresponing source image

                        ","dataType":{"tokens":[{"value":"string | Image","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"string | %1"}},{"identifier":"settings.fontData","optional":true,"default":"settings.font","description":"

                        the bitmap font data corresponding name, or the bitmap font data itself

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","optional":true,"description":"

                        size a scaling ratio

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.fillStyle","optional":true,"description":"

                        a CSS color value used to tint the bitmapText (@see BitmapText.tint)

                        ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.lineWidth","optional":true,"default":"1","description":"

                        line width, in pixels, when drawing stroke

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.textAlign","optional":true,"default":"\"left\"","description":"

                        horizontal text alignment

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"top\"","description":"

                        the text baseline

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.lineHeight","optional":true,"default":"1.0","description":"

                        line spacing height

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.0, y:0.0}","description":"

                        anchor point to draw the text at

                        ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.wordWrapWidth","optional":true,"description":"

                        the maximum length in CSS pixel for a single segment of text

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"description":"

                        a string, or an array of strings

                        ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qrfKrgqJSMXajU-mEW6Er","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                        Returns true if the rectangle contains the given point or rectangle

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point, or a rectangle to test

                        ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                        y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        True if the rectangle contain the given point or rectangle, otherwise false

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aJhOHGFLLGif9YUm3L0J3","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                        copy the position and size of the given rectangle into this one

                        ","params":[{"identifier":"rect","optional":false,"description":"

                        Source rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        new rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YwroKiVCyj2_tSLFCsxQl","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the distance to the specified target

                        ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        distance

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"t-nJ8V7s01LzqNEpZxQ_b","name":"draw","brief":"","scope":"instance","type":"MethodDoc","description":"

                        draw the bitmap font

                        ","params":[{"identifier":"renderer","optional":false,"description":"

                        Reference to the destination renderer instance

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fgyT20vT6nrLJXKBH3pkK","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if this rectangle is identical to the specified one

                        ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        true if equals

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iRxH4o65GT4bbcBXLyELy","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                        flip the renderable on the horizontal axis (around the center of the renderable)

                        ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                        true to flip this renderable.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NBLY4AbzNAk7c1A23sOd5","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                        flip the renderable on the vertical axis (around the center of the renderable)

                        ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                        true to flip this renderable.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z7_1ksDTVxCArqGoh4pWp","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the renderable absolute position in the game world

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dBME1zP4ZD0JKp_Rnh5rp","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns the bounding box for this renderable

                        ","params":[],"returns":[{"description":"

                        bounding box Rectangle object

                        ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SSme9V7tuWq8_lCj9qLdU","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns a list of indices for all triangles defined in this polygon

                        ","params":[],"returns":[{"description":"

                        an array of vertex indices for all triangles forming this polygon.

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"b1IbcxbLN6KXqMFmBT3Ru","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                        get the renderable alpha channel value

                        ","params":[],"returns":[{"description":"

                        current opacity value between 0 and 1

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"f0dshtkvlORdL0HV7dj4r","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                        ","params":[],"returns":[{"description":"

                        true if the vertices are convex, false if not, null if not computable

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NRrQtJHXtaupvcWz5jEDD","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                        determines whether all coordinates of this rectangle are finite numbers.

                        ","params":[],"returns":[{"description":"

                        false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hoO7usegr4I4DAAfnbkie","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Rotate this renderable towards the given target.

                        ","params":[{"identifier":"target","optional":false,"description":"

                        the renderable or position to look at

                        ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mvLguLv75oHYE2xTFIgZl","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

                        measure the given text size in pixels

                        ","params":[{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                        a TextMetrics object with two properties: width and height, defining the output dimensions

                        ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HgcwXyuuI_btAzNUrnUqM","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                        onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                        ","params":[{"identifier":"response","optional":false,"description":"

                        the collision response object

                        ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                        the other renderable touching this one (a reference to response.a or response.b)

                        ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                        true if the object should respond to the collision (its position and velocity will be corrected)

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vxXTgvuegixenz-9dNusS","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                        OnDestroy Notification function
                        \nCalled by engine before deleting the object

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rt8xdWWD85hIXJld08vHt","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if this rectangle is intersecting with the specified one

                        ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        true if overlaps

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"O0BGtF2KixiVUeafl7HHp","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                        restore the rendering context after drawing (automatically called by melonJS).

                        ","params":[{"identifier":"renderer","optional":false,"description":"

                        a renderer object

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"fjcjN-Tp81JQkWG31A4uJ","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                        Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                        a renderer object

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"PsVViBcPYnJMaaAqKZDSi","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mkj_x1Cb185ATiVeEJiox","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                        change the font display size

                        ","params":[{"identifier":"scale","optional":false,"description":"

                        ratio

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this object for chaining

                        ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rx5688mBh7y6EJgrqfyDz","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Rotate this renderable by the specified angle (in radians).

                        ","params":[{"identifier":"angle","optional":false,"description":"

                        The angle to rotate (in radians)

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                        an optional point to rotate around

                        ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6Un63jCvK8_6Oq6RLhtEt","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                        scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                        a number representing the abscissa of the scaling vector.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                        a number representing the ordinate of the scaling vector.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bHhlTRepzr7JwfzaKyDeF","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                        scale the renderable around his anchor point

                        ","params":[{"identifier":"v","optional":false,"description":"

                        scaling vector

                        ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0TUg2kc4srhf5oA3sAxhz","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                        change the font settings

                        ","params":[{"identifier":"textAlign","optional":false,"description":"

                        ("left", "center", "right")

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"scale","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this object for chaining

                        ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iI9BXc7-5S5QgtG1Rh6Vy","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the renderable alpha channel value

                        ","params":[{"identifier":"alpha","optional":false,"description":"

                        opacity value between 0.0 and 1.0

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iZIWeEIzAYD9Zv1bM-SQ4","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set new value to the rectangle shape

                        ","params":[{"identifier":"x","optional":false,"description":"

                        position of the Rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        position of the Rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                        width of the rectangle, or an array of vector defining the rectangle

                        ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                        height of the rectangle, if a numeral width parameter is specified

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9yBTcfIOZSnex40b1S4ZR","name":"setText","brief":"","scope":"instance","type":"MethodDoc","description":"

                        change the text to be displayed

                        ","params":[{"identifier":"value","optional":false,"default":"\"\"","description":"

                        a string, or an array of strings

                        ","dataType":{"tokens":[{"value":"number | string | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | string | %2"}}],"returns":[{"description":"

                        this object for chaining

                        ","dataType":{"tokens":[{"value":"BitmapText","kind":"canonical"},{"value":"BitmapText","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pOj0QNfhbIhnP9ec48peF","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the vertices defining this Polygon

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        array of vector or vertice defining the Polygon

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                        this instance for objecf chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zUCIogeI8uAMFdXWeENiP","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        Shifts the Polygon to the given position vector.

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to shift to

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VbRL3mM4T_es4OfwkiwUH","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                        apply a 2d projection to this shapen

                        ","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_TX-7k8hmZlzzvnDi6d-2","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                        apply an isometric projection to this shape

                        ","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w5bGk-JRWLwjSGSXY47Rq","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns a polygon whose edges are the same as this box.

                        ","params":[],"returns":[{"description":"

                        a new Polygon that represents this rectangle.

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QhzFKkw6AKl3nCZFb0G8Y","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                        multiply the renderable currentTransform with the given matrix

                        ","params":[{"identifier":"m","optional":false,"description":"

                        the transformation matrix

                        ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GdSI3N55hllxxvDU1bBON","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        translate the Polygon by the specified offset

                        ","params":[{"identifier":"x","description":"

                        x offset or a vector point to translate by

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                        y offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mm6fQWDYn0R7UF4nlYNgY","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                        merge this rectangle with another one

                        ","params":[{"identifier":"rect","optional":false,"description":"

                        other rectangle to union with

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        the union(ed) rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"11EZFjj33Q9yAlT91hwc0","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                        update function (automatically called by melonJS).

                        ","params":[{"identifier":"dt","optional":false,"description":"

                        time since the last update in milliseconds.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        true if the renderable is dirty

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"SEHb_2fA_0RrW_rGK2PU7","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        update the bounding box for this Bitmap Text.

                        ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                        update the bounds size and position in (world) absolute coordinates

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        this Bitmap Text bounding box Rectangle object

                        ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cvm5WnLZceZEfAGoJaGku","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                        called when the anchor point value is changed

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the new X value to be set for the anchor

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the new Y value to be set for the anchor

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"2UsXE_f6VfM1bN05lW8Zp","name":"Body","brief":"","see":["Renderable.body"],"type":"ClassDoc","description":"

                        a Generic Physic Body Object with some physic properties and behavior functionality, to add as a member of a Renderable.

                        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"3phwSQmXka5n9aZIjDCNl","name":"ancestor","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the parent object that contains this body,\nor undefined if it has not been added to one.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7JXFDANEJNu1mAA-KOWVb","name":"bounce","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                        the body bouciness level when colliding with other solid bodies :\na value of 0 will not bounce, a value of 1 will fully re...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EZiQuVidEqv2ytaLMDc9f","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        The AABB bounds box reprensenting this body

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OuWmH98NMbCX4s5MfvgJv","name":"collisionType","brief":"","access":"public","defaultValue":"collision.types.ENEMY_OBJECT","examples":[{"caption":"","code":"// set the body collision type\nbody.collisionType = me.collision.types.PLAYER_OBJECT;"}],"scope":"instance","see":["collision.types"],"type":"PropertyDoc","description":"

                        define the collision type of the body for collision filtering

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NZjKOiph9JlFarVvfbIIz","name":"falling","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                        falling state of the body
                        \ntrue if the object is falling
                        \nfalse if the object is standing on something

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VvVk9_9_qWNKo_3uZiavy","name":"force","brief":"","access":"public","defaultValue":"<0,0>","examples":[{"caption":"","code":" // define a default maximum acceleration, initial force and friction\n this.body.force.set(1, 0);\n this.body.friction.set(0.4, 0);\n this.body.setMaxVelocity(3, 15);\n\n // apply a postive or negative force when pressing left of right key\n update(dt) {\n if (me.input.isKeyPressed(\"left\")) {\n this.body.force.x = -this.body.maxVel.x;\n } else if (me.input.isKeyPressed(\"right\")) {\n this.body.force.x = this.body.maxVel.x;\n }\n }"}],"scope":"instance","see":["Body.setMaxVelocity"],"type":"PropertyDoc","description":"

                        body force to apply to this the body in the current step.\n(any positive or negative force will be cancelled after every wo...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oSXdVvksbK_9c8fsf86bo","name":"friction","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","type":"PropertyDoc","description":"

                        body friction

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3Kl9EO3n7blplgv-zhssg","name":"gravityScale","brief":"","access":"public","defaultValue":"1.0","scope":"instance","see":["World.gravity"],"type":"PropertyDoc","description":"

                        The degree to which this body is affected by the world gravity

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i17F0MjNltFs3Wd3s-n-u","name":"ignoreGravity","brief":"","access":"public","defaultValue":"false","scope":"instance","see":["World.gravity"],"type":"PropertyDoc","description":"

                        If true this body won't be affected by the world gravity

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ud145imsg5t7IjYBzWRO7","name":"isStatic","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                        Either this body is a static body or not.\nA static body is completely fixed and can never change position or angle.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gDMQlFKPLozBJhAW4ShnL","name":"jumping","brief":"","access":"public","defaultValue":"false","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                        jumping state of the body
                        \nequal true if the body is jumping

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yApuaZIXfPFsyQVUIxA1D","name":"mass","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

                        the body mass

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2wVohmqe9cARAdP_UV7Ls","name":"maxVel","brief":"","access":"public","defaultValue":"<490,490>","scope":"instance","type":"PropertyDoc","description":"

                        max velocity (to limit body velocity)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aY17UW7MxCTLSoEXHEKXO","name":"vel","brief":"","access":"public","defaultValue":"<0,0>","scope":"instance","see":["Body.force"],"type":"PropertyDoc","description":"

                        The current velocity of the body.\nSee to apply a force if you need to modify a body velocity

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cPNqw7yAngJwu6HUi33rW","name":"addShape","brief":"","examples":[{"caption":"","code":"// add a rectangle shape\nthis.body.addShape(new me.Rect(0, 0, image.width, image.height));\n// add a shape from a JSON object\nthis.body.addShape(me.loader.getJSON(\"shapesdef\").banana);"}],"scope":"instance","type":"MethodDoc","description":"

                        add a collision shape to this body
                        \n(note: me.Rect objects will be converted to me.Polygon before being added)

                        ","params":[{"identifier":"shape","optional":false,"description":"

                        a shape or JSON object

                        ","dataType":{"tokens":[{"value":"Rect | Polygon | Line | Ellipse | Point | Array | Bounds | object","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"},{"value":"Point","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6<%7> | %8 | object"}}],"returns":[{"description":"

                        the shape array length

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"flkNQ3ObbFJvlS1ZSU7BF","name":"addVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        add the given vertices to the body shape

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        an array of me.Vector2d points defining a convex hull

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"index","optional":true,"default":"0","description":"

                        the shape object for which to set the vertices

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mHtMaNX2JNdBbrIXN_Se_","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"ancestor","optional":false,"description":"

                        the parent object this body is attached to

                        ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"shapes","optional":true,"description":"

                        a initial shape, list of shapes, or JSON object defining the body

                        ","dataType":{"tokens":[{"value":"Rect | Array | Polygon | Array | Line | Array | Ellipse | Array | Point | Array | Bounds | Array | object","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"},{"value":"Point","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Bounds","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1 | %3<%2> | %4 | %5<%6> | %7 | %8<%9> | %10 | %11<%12> | %13 | %14<%15> | %16 | %17<%18> | object"}},{"identifier":"onBodyUpdate","optional":true,"description":"

                        callback for when the body is updated (e.g. add/remove shapes)

                        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"G3iSCrlioh342ZFMFtbtN","name":"contains","brief":"","examples":[{"caption":"","code":"if (mySprite.body.contains(10, 10)) {\n // do something\n}\n// or\nif (mySprite.body.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                        Returns true if the any of the shape composing the body contains the given point.

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to check

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                        y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        true if contains

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"zL0X_KRUgWQNFvZavjDak","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all shapes of the physic body\nmySprite.body.forEach((shape) => {\n shape.doSomething();\n});\nmySprite.body.forEach((shape, index) => { ... });\nmySprite.body.forEach((shape, index, array) => { ... });\nmySprite.body.forEach((shape, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                        The forEach() method executes a provided function once per body shape element.
                        \nthe callback function is invoked with ...","params":[{"identifier":"callback","optional":false,"description":"

                        fnction to execute on each element

                        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                        value to use as this(i.e reference Object) when executing callback.

                        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"NZa4xv1kqslFqtODcdBkR","name":"fromJSON","brief":"","examples":[{"caption":"","code":"// define the body based on the banana shape\nthis.body.fromJSON(me.loader.getJSON(\"shapesdef\").banana);\n// or ...\nthis.body.fromJSON(me.loader.getJSON(\"shapesdef\"), \"banana\");"}],"scope":"instance","see":["https://www.codeandweb.com/physicseditor"],"type":"MethodDoc","description":"

                        add collision mesh based on a JSON object\n(this will also apply any physic properties defined in the given JSON file)

                        ","params":[{"identifier":"json","optional":false,"description":"

                        a JSON object as exported from a Physics Editor tool

                        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"id","optional":true,"description":"

                        an optional shape identifier within the given the json object

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                        how many shapes were added to the body

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"clDV1yE6VOUNPECEdbwmV","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns the AABB bounding box for this body

                        ","params":[],"returns":[{"description":"

                        bounding box Rectangle object

                        ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mw0B_Djm18uM9XYPDWpvX","name":"getShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the collision shape at the given index

                        ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                        the shape object at the specified index

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        shape a shape object if defined

                        ","dataType":{"tokens":[{"value":"Polygon | Line | Ellipse","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3"}}],"extends":[],"implements":[]},{"id":"ZkbFBLJR_wr_UK00MKMNY","name":"removeShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                        remove the specified shape from the body shape list

                        ","params":[{"identifier":"shape","optional":false,"description":"

                        a shape object

                        ","dataType":{"tokens":[{"value":"Polygon | Line | Ellipse","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        the shape array length

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tFh7J8Dn22kkaznp-RD_X","name":"removeShapeAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                        remove the shape at the given index from the body shape list

                        ","params":[{"identifier":"index","optional":false,"description":"

                        the shape object at the specified index

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        the shape array length

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DWLhDgpkHT5YWNKq-9n6y","name":"respondToCollision","brief":"","scope":"instance","type":"MethodDoc","description":"

                        the built-in function to solve the collision response

                        ","params":[{"identifier":"response","optional":false,"description":"

                        the collision response object (see {@link ResponseObject})

                        ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"CpokprhODoMiMzcutBjDG","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Rotate this body (counter-clockwise) by the specified angle (in radians).\nUnless specified the body will be rotated around...","params":[{"identifier":"angle","optional":false,"description":"

                        The angle to rotate (in radians)

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"default":"Body.getBounds().center","description":"

                        an optional point to rotate around

                        ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I0xkGAONSof1ZQPpPpyfI","name":"setCollisionMask","brief":"","examples":[{"caption":"","code":"// filter collision detection with collision shapes, enemies and collectables\nbody.setCollisionMask(me.collision.types.WORLD_SHAPE | me.collision.types.ENEMY_OBJECT | me.collision.types.COLLECTABLE_OBJECT);\n...\n// disable collision detection with all other objects\nbody.setCollisionMask(me.collision.types.NO_OBJECT);"}],"scope":"instance","see":["collision.types"],"type":"MethodDoc","description":"

                        By default all physic bodies are able to collide with all other bodies,
                        \nbut it's also possible to specify 'collision ...","params":[{"identifier":"bitmask ","optional":true,"default":" collision.types.ALL_OBJECT","description":"

                        the collision mask

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"j0P1foO2iVpfvSo0dXR1m","name":"setCollisionType","brief":"","examples":[{"caption":"","code":"// set the body collision type\nbody.collisionType = me.collision.types.PLAYER_OBJECT;"}],"scope":"instance","see":["collision.types"],"type":"MethodDoc","description":"

                        define the collision type of the body for collision filtering

                        ","params":[{"identifier":"type","optional":false,"description":"

                        the collision type

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mvD6FvcAm7LT6XtV-6vo2","name":"setFriction","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the body default friction

                        ","params":[{"identifier":"x","optional":false,"default":"0","description":"

                        horizontal friction

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

                        vertical friction

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Sd7kmSHLSlGWeK4QP04Yp","name":"setMaxVelocity","brief":"","scope":"instance","type":"MethodDoc","description":"

                        cap the body velocity (body.maxVel property) to the specified value

                        ","params":[{"identifier":"x","optional":false,"description":"

                        max velocity on x axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        max velocity on y axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Q9PwEmHWaCh75RJg_fvv5","name":"setStatic","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the body as a static body\nstatic body do not move automatically and do not check againt collision with others

                        ","params":[{"identifier":"isStatic","optional":true,"default":"true","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"WzWcyBRSGLE_nZFLiWvzO","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the body vertices to the given one

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        an array of me.Vector2d points defining a convex hull

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"index","optional":true,"default":"0","description":"

                        the shape object for which to set the vertices

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"true","description":"

                        either to reset the body definition before adding the new vertices

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"NbGvn1oCPSXfAojo8Jl6L","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                        Updates the parent's position as well as computes the new body's velocity based\non the values of force/friction. Velocity...","params":[{"identifier":"dt","optional":false,"description":"

                        time since the last update in milliseconds.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        true if resulting velocity is different than 0

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"e5F2JjTyEZDuk_R5XN7Tp","name":"Bounds","brief":"","type":"ClassDoc","description":"

                        a bound object contains methods for creating and manipulating axis-aligned bounding boxes (AABB).

                        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"3BmywkwLUDPY6MwOByhWe","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VaIai4vsVbfkr33PX9Slv","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        return the center position of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wsc20kKWSwMqr-QFZ5Lul","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        center position of the bound on the x axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J1gdl16ug41WPcxQGs3to","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        center position of the bound on the y axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GrULUzVS7D2ZPvMVh5bB0","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4e8jLuhvDxqerGcUdgrdm","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        left coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4RpyqdcXiVE67_TLxE564","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tAfxe4sjunQcRzNC_pZax","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        top coordinate of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tDlAC__TAKHKBYbFBIaAd","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                        the object type (used internally)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KblXH0Yoqxr5QZG5qTEqt","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-ljqj2DA-qhjhClATmgou","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        x position of the bound

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yVDStz2jcYStJOw3i41v2","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        y position of the bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z_ffeojVX_ElRrvPNfT8v","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                        add the given vertices to the bounds definition.

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        an array of Vector2d or Point

                        ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

                        either to reset the bounds before adding the new vertices

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"e-GpFtQcbo5r5yZmVhMhw","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        add the given bounds to the bounds definition.

                        ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

                        either to reset the bounds before adding the new vertices

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"TL-Jyc0CYhzcPag2rmu7b","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                        add the given quad coordinates to this bound definition, multiplied by the given matrix

                        ","params":[{"identifier":"x0","optional":false,"description":"

                        left X coordinates of the quad

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

                        top Y coordinates of the quad

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

                        right X coordinates of the quad

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

                        bottom y coordinates of the quad

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

                        an optional transform to apply to the given frame coordinates

                        ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Wkuy2fFU_16OiRDaES_D-","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                        add the given point to the bounds definition.

                        ","params":[{"identifier":"point","optional":false,"description":"

                        the vector or point to be added to the bounds

                        ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

                        an optional transform to apply to the given point (if the given point is a Vector2d)

                        ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Bc2NqKuHWRqJ-KsNUI55Y","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                        center the bounds position around the given coordinates

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the x coordinate around which to center this bounds

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the y coordinate around which to center this bounds

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bMQWYqJyTeVBQIQ0I3LTH","name":"clear","brief":"

                        reset the bound

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jl-EXQpJIRUsSorz3GFIU","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                        clone this bounds

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S_SgccCkyj0jvAJ0qGYLx","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"vertices","optional":true,"description":"

                        an array of Vector2d or Point

                        ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"d4gyMiEZK7hjJnVE8W4G3","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                        Returns true if the bounds contains the given point.

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to check

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                        y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        True if the bounds contain the point, otherwise false

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"5l7HvVTNHjhoBlcJ0mi4_","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                        determines whether all coordinates of this bounds are finite numbers.

                        ","params":[],"returns":[{"description":"

                        false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pIb4texwW_omGC-Vbs8to","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns true if the two bounds intersect.

                        ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                        True if the bounds overlap, otherwise false

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CfvVRXUmNFb7qX6cqkdfS","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

                        sets the bounds to the given min and max value

                        ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8UZr6AtskSaWbePGyjSVw","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        Shifts the bounds to the given x, y position.

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to shift to

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Z_z6IjV5lbsWvKNegwqsP","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns a polygon whose edges are the same as this bounds.

                        ","params":[],"returns":[{"description":"

                        a new Polygon that represents this bounds.

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"htcOHWTSYW_5Wg_asJQVC","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        Translates the bounds by the given point

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to translate by

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"O5kPT27kvOFLHj3WkaHd_","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Updates bounds using the given vertices

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        an array of Vector2d or Point

                        ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"c1Qj7XKE5X-zMO4fnpuuf","name":"Camera2d","brief":"","type":"ClassDoc","description":"

                        a 2D orthographic camera

                        ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"6UxDWN-zk5sF_HSLQHSic","name":"AXIS","brief":"","readonly":true,"type":"EnumDoc","description":"

                        Axis definition

                        ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"f_QaOqw7-6agwXWzp8EBU","name":"BOTH","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        both axis

                        "},{"id":"2k_SqomBnzVIcOGE6g_q2","name":"HORIZONTAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        horizontal axis only

                        "},{"id":"WrgTq4ZE8-kYJ_fxZNAO_","name":"NONE","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        no axis

                        "},{"id":"SqEWzkoTYeNr_Uqu4B6jz","name":"VERTICAL","brief":"","access":"public","scope":"static","type":"PropertyDoc","description":"

                        vertical axis only

                        "}]},{"id":"z0Lj2r5gEMwAUKRayxwaH","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                        Define the renderable opacity
                        \nSet to zero if you do not wish an object to be drawn

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dg1RsWgwOKFliqCVQLQ5K","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether the renderable object will always update, even when outside of the viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LaiuDCTWa4n15ZKcljkb7","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                        a reference to the parent object that contains this renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9Hvu1KS3bxhGK0w6RkQiK","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                        The anchor point is used for attachment behavior, and/or when applying transformations.
                        \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c-CkeChZMhLTlxzmW5OG6","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                        When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CmC9i1sTf7Vpplfe0Wcu8","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                        the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QXXhe_KgrHv6PEVd7MhUL","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                        the renderable physic body

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pnuhGYTK39vwhBIahvEdP","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        bottom coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4cytseIEC9BchjPit-czh","name":"bounds","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Camera bounds

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"egzRw2WKICGThBO9nKB4_","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the horizontal axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8XNKPFCCNKcu1kuLKdBWD","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        absolute center of this rectangle on the vertical axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nZcGHl0ck2c2-BJgd4LKf","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the renderable default transformation matrix

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8eCb1r52S64BysUqHaKHW","name":"damping","brief":"","access":"public","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

                        Camera damping for smooth transition [0 .. 1].\n1 being the maximum value and will snap the camera to the target position

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J2XRLyCEU7gIZCp2iCOaX","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        the depth of this renderable on the z axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OwLbCcUeMz2klRFPWvmHe","name":"far","brief":"","access":"public","defaultValue":"1000","scope":"instance","type":"PropertyDoc","description":"

                        the furthest point relative to the camera.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W4RB5mfF-TuWRlV6Qr3_N","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GxhG4WsxaeotAK3uOMa7U","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        (G)ame (U)nique (Id)entifier"
                        \na GUID will be allocated for any renderable object added
                        \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Tablhc0ZQWL-KLvCsAFLq","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        height of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C4HEHcDo2mlh5AtS74TaT","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether the renderable object is visible and within the viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JCrtRzu9b-4Y_lxEgdzE3","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        when true the renderable will be redrawn during the next update cycle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rTmL-_NjYBU0PRNU31uLd","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                        returns true if this renderable is flipped on the horizontal axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FshFVBQoRDISj37QSCS_7","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                        returns true if this renderable is flipped on the vertical axis

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8JiRwut0Mflgl7WnItg0F","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                        Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JDCgpyyH-btR9ZVcLaJgW","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        If true then physic collision and input events will not impact this renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f18j8HuoRm_wnMq1fyt-0","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        make the renderable object persistent over level changes

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TYGivfuRCnaXsX9mVTs16","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        left coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tiHyqgnjhTREEgDxUH62y","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                        A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IrD1s3iiKAaX0SyaUTxHS","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                        The name of the renderable

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K-IInsGay7sa8GFKjSJIS","name":"near","brief":"","access":"public","defaultValue":"-1000","scope":"instance","type":"PropertyDoc","description":"

                        the closest point relative to the camera

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nmEwDH0GrROihBXAGlglB","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                        an event handler that is called when the renderable leave or enter a camera viewport

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yDQ-d3RgP2UDta3KYtYGf","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        Array of points defining the Polygon
                        \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-dGhLNOzMAk8HbeGY1NIA","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        Position of the Renderable relative to its parent container

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VWBOHDz5NtzTAWIaPt3sX","name":"projectionMatrix","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        the default camera projection matrix\n(2d cameras use an orthographic projection by default).

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kAApW0DS4tgjuHJuVlNdV","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        right coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_RZ99FHREKrF7GkWUYNc_","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                        (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ds3e1wCCJd69TxjM2PDbq","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                        define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GJ4YoAPWKcezEIZ7B5yyJ","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        top coordinate of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HTPM8Oz45E3HbtT3Bht1a","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                        the shape type (used internally)

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Tl286EjZ8__pNa6SFIV9P","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                        Whether to update this object when the game is paused.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D55ULvvz6Y4qBDPGra9DV","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        width of the Rectangle

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R-rHz9bHZeagRxKRTtDQ0","name":"smoothFollow","brief":"","access":"private","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        enable or disable damping

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eTmdSLw8QSZsXzeBYKRVY","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the angle to the specified target

                        ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        angle in radians

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ow0ge3ro0_LbDValC4tNZ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                        center the rectangle position around the given coordinates

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the x coordinate around which to center this rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the y coordinate around which to center this rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kzyiv5E5e-nhs0MJYsQP2","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                        clone this rectangle

                        ","params":[],"returns":[{"description":"

                        new rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6UbWN6A9aPjV6TSKlsKFJ","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"minX","optional":false,"description":"

                        start x offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"description":"

                        start y offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"description":"

                        end x offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"description":"

                        end y offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"-DL0OvOwvvKvj3TzU7Xtg","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                        Returns true if the rectangle contains the given point or rectangle

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point, or a rectangle to test

                        ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                        y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        True if the rectangle contain the given point or rectangle, otherwise false

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"lc1dUWQ41fPbgns5Tx69a","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                        copy the position and size of the given rectangle into this one

                        ","params":[{"identifier":"rect","optional":false,"description":"

                        Source rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        new rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"L2bnKYl9YOROKRG6U68hx","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the distance to the specified target

                        ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        distance

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TRiWojsMo0Ko200_-HgMZ","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                        Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                        a renderer instance

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                        the viewport to (re)draw

                        ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"54SSlj1KSmK_gWquHhH-0","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if this rectangle is identical to the specified one

                        ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        true if equals

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DI_fYtZkCrSOWWYiLkWY_","name":"fadeIn","brief":"","examples":[{"caption":"","code":"// flash the camera to white for 75ms\nme.game.viewport.fadeIn(\"#FFFFFF\", 75);"}],"scope":"instance","type":"MethodDoc","description":"

                        fadeIn effect

                        \nfade to the specified color

                        ","params":[{"identifier":"color","optional":false,"description":"

                        a CSS color value

                        ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

                        expressed in milliseconds

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

                        callback once effect is over

                        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"QerLXjKVAv8nG3JcdoS5B","name":"fadeOut","brief":"","examples":[{"caption":"","code":"// fade the camera to white upon dying, reload the level, and then fade out back\nme.game.viewport.fadeIn(\"#fff\", 150, function() {\n me.audio.play(\"die\", false);\n me.level.reload();\n me.game.viewport.fadeOut(\"#fff\", 150);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                        fadeOut(flash) effect

                        \nscreen is filled with the specified color and slowly goes back to normal

                        ","params":[{"identifier":"color","optional":false,"description":"

                        a CSS color value

                        ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"duration","optional":true,"default":"1000","description":"

                        expressed in milliseconds

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

                        callback once effect is over

                        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"-TTGP_Di-asDMr2SeDG4C","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                        flip the renderable on the horizontal axis (around the center of the renderable)

                        ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                        true to flip this renderable.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"745rteg_o-0uVw2_GMqJx","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                        flip the renderable on the vertical axis (around the center of the renderable)

                        ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                        true to flip this renderable.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YLDiXUw69P-Kl_DKIRRKC","name":"focusOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the camera position around the specified object

                        ","params":[{"identifier":"target","optional":false,"description":"

                        the renderable to focus the camera on

                        ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[],"extends":[],"implements":[]},{"id":"NddNPuAo-q2Vfp5yuMA25","name":"follow","brief":"","examples":[{"caption":"","code":"// set the camera to follow this renderable on both axis, and enable damping\nme.game.viewport.follow(this, me.game.viewport.AXIS.BOTH, 0.1);"}],"scope":"instance","type":"MethodDoc","description":"

                        set the camera to follow the specified renderable.
                        \n(this will put the camera center around the given target)

                        ","params":[{"identifier":"target","optional":false,"description":"

                        renderable or position vector to follow

                        ","dataType":{"tokens":[{"value":"Renderable | Vector2d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"axis","optional":true,"default":"me.game.viewport.AXIS.BOTH","description":"

                        Which axis to follow (see {@link Camera2d.AXIS})

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"damping","optional":true,"default":"1","description":"

                        default damping value

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DgzOlt1i7H2n6xMEC8CdA","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the renderable absolute position in the game world

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"f3X_tK6XcCCxVZ7c_xvHS","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns the bounding box for this renderable

                        ","params":[],"returns":[{"description":"

                        bounding box Rectangle object

                        ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j6JZZRRt-mkRfaPNRLIn1","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns a list of indices for all triangles defined in this polygon

                        ","params":[],"returns":[{"description":"

                        an array of vertex indices for all triangles forming this polygon.

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"E8yyPzJwVqn2N-AygwYXx","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                        get the renderable alpha channel value

                        ","params":[],"returns":[{"description":"

                        current opacity value between 0 and 1

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TmDfVOfTN0BkFNm0bX3AZ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                        ","params":[],"returns":[{"description":"

                        true if the vertices are convex, false if not, null if not computable

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_p4FJO_S1U3aLYMdJAJhp","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                        determines whether all coordinates of this rectangle are finite numbers.

                        ","params":[],"returns":[{"description":"

                        false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"q1m1VSCNYRj0q3VwiBlBf","name":"isVisible","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if the specified renderable is in the camera

                        ","params":[{"identifier":"obj","optional":false,"description":"

                        to be checked against

                        ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"floating ","optional":true,"default":" obj.floating","description":"

                        if visibility check should be done against screen coordinates

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        true if within the viewport

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"WZFw5Bef8gVz_xlzz_Pm5","name":"localToWorld","brief":"","scope":"instance","type":"MethodDoc","description":"

                        convert the given "local" (screen) coordinates into world coordinates

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the x coordinate of the local point to be converted

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the y coordinate of the local point to be converted

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                        an optional vector object where to set the converted value

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-kACH-HvjqCklJ9AQA_Qd","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Rotate this renderable towards the given target.

                        ","params":[{"identifier":"target","optional":false,"description":"

                        the renderable or position to look at

                        ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AbpcCP8QUCq7dg28rRVMV","name":"move","brief":"","examples":[{"caption":"","code":"// Move the camera up by four pixels\nme.game.viewport.move(0, -4);"}],"scope":"instance","see":["Camera2d.focusOn"],"type":"MethodDoc","description":"

                        move the camera upper-left position by the specified offset.

                        ","params":[{"identifier":"x","optional":false,"description":"

                        horizontal offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        vertical offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CjsVWKx0hnxxqmKSHSA6m","name":"moveTo","brief":"","scope":"instance","see":["Camera2d.focusOn"],"type":"MethodDoc","description":"

                        move the camera upper-left position to the specified coordinates

                        ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"UEw-hm4zHwX9PkM6oFNrJ","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                        onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                        ","params":[{"identifier":"response","optional":false,"description":"

                        the collision response object

                        ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                        the other renderable touching this one (a reference to response.a or response.b)

                        ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                        true if the object should respond to the collision (its position and velocity will be corrected)

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZosAgJK-olyb2FPd6cEE3","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                        OnDestroy Notification function
                        \nCalled by engine before deleting the object

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6gj0CdbYIAXeDSCS-__-c","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if this rectangle is intersecting with the specified one

                        ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        true if overlaps

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gWV0eJbhh4lx--Vz0W-e7","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                        restore the rendering context after drawing (automatically called by melonJS).

                        ","params":[{"identifier":"renderer","optional":false,"description":"

                        a renderer object

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"79XAjCfKoasADtXciKqtk","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                        Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                        a renderer object

                        ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"e1kbEwQcu3gz20EYkiEeJ","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w9dsrHJ2MM8FkGtKGFF4l","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

                        reset the camera position to specified coordinates

                        ","params":[{"identifier":"x","optional":true,"default":"0","description":"

                        initial position of the camera on the x axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                        initial position of the camera on the y axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YLFLHViDJzoxR52zl-1v9","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                        resize the camera

                        ","params":[{"identifier":"w","optional":false,"description":"

                        new width of the camera

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                        new height of the camera

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this camera

                        ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3FTMz1Kae8r8C6mvc9z0s","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Rotate this renderable by the specified angle (in radians).

                        ","params":[{"identifier":"angle","optional":false,"description":"

                        The angle to rotate (in radians)

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                        an optional point to rotate around

                        ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NWJBzeFX3kazQsyD60Qn7","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                        scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                        a number representing the abscissa of the scaling vector.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                        a number representing the ordinate of the scaling vector.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TzpzgxrpnZiPiUfuSxzru","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                        scale the renderable around his anchor point

                        ","params":[{"identifier":"v","optional":false,"description":"

                        scaling vector

                        ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"b58uMI-tgB8yeIeaaSDkF","name":"setBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the camera boundaries (set to the world limit by default).\nthe camera is bound to the given coordinates and cannot mov...","params":[{"identifier":"x","optional":false,"description":"

                        world left limit

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        world top limit

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                        world width limit

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                        world height limit

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cdAxEcIcY25TpBqJ1_6vm","name":"setDeadzone","brief":"","scope":"instance","see":["Camera2d.follow"],"type":"MethodDoc","description":"

                        change the deadzone settings.\nthe "deadzone" defines an area within the current camera in which\nthe followed ren...","params":[{"identifier":"w","optional":false,"description":"

                        deadzone width

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                        deadzone height

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FijSTgj5eQ8_S5Pa5ABkQ","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the renderable alpha channel value

                        ","params":[{"identifier":"alpha","optional":false,"description":"

                        opacity value between 0.0 and 1.0

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"pl-zVian7ONQA8obnNeRy","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set new value to the rectangle shape

                        ","params":[{"identifier":"x","optional":false,"description":"

                        position of the Rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        position of the Rectangle

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                        width of the rectangle, or an array of vector defining the rectangle

                        ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                        height of the rectangle, if a numeral width parameter is specified

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        this rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w82KVUhClR-S3xQd8lTv4","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                        set the vertices defining this Polygon

                        ","params":[{"identifier":"vertices","optional":false,"description":"

                        array of vector or vertice defining the Polygon

                        ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                        this instance for objecf chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9blhC_aV2eBtIxBwMgIK8","name":"shake","brief":"","examples":[{"caption":"","code":"// shake it baby !\nme.game.viewport.shake(10, 500, me.game.viewport.AXIS.BOTH);"}],"scope":"instance","type":"MethodDoc","description":"

                        shake the camera

                        ","params":[{"identifier":"intensity","optional":false,"description":"

                        maximum offset that the screen can be moved\nwhile shaking

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"duration","optional":false,"description":"

                        expressed in milliseconds

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"axis","optional":true,"default":"me.game.viewport.AXIS.BOTH","description":"

                        specify on which axis to apply the shake effect (see {@link Camera2d.AXIS})

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"onComplete","optional":true,"description":"

                        callback once shaking effect is over

                        ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"force","optional":true,"description":"

                        if true this will override the current effect

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"oEVmkkpwswR_q4qtpxpHq","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        Shifts the Polygon to the given position vector.

                        ","params":[{"identifier":"x","description":"

                        x coordinate or a vector point to shift to

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"j0E1ROw5KW4UZy0ledJbp","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                        apply a 2d projection to this shapen

                        ","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g_NpQIylMTYFPPIh0PV3_","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                        apply an isometric projection to this shape

                        ","params":[],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AVDfRB8yjoj9_XoHtKw3U","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns a polygon whose edges are the same as this box.

                        ","params":[],"returns":[{"description":"

                        a new Polygon that represents this rectangle.

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8nCNg6HYwsGwsRMebmHsp","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                        multiply the renderable currentTransform with the given matrix

                        ","params":[{"identifier":"m","optional":false,"description":"

                        the transformation matrix

                        ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ql5o1Zkw-fF5QH6S6lb14","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                        translate the Polygon by the specified offset

                        ","params":[{"identifier":"x","description":"

                        x offset or a vector point to translate by

                        ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                        y offset

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        Reference to this object for method chaining

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pbOaeeVle4Zn--GlE_XAq","name":"unfollow","brief":"","scope":"instance","type":"MethodDoc","description":"

                        unfollow the current target

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aVthtTtH_8ZGuBAJmkVzO","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                        merge this rectangle with another one

                        ","params":[{"identifier":"rect","optional":false,"description":"

                        other rectangle to union with

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                        the union(ed) rectangle

                        ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_2TkGvDDN6po-sjewLyya","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                        update function (automatically called by melonJS).

                        ","params":[{"identifier":"dt","optional":false,"description":"

                        time since the last update in milliseconds.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        true if the renderable is dirty

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"t433sePFGLaf1nG6YEql5","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                        update the bounding box for this shape.

                        ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                        update the bounds size and position in (world) absolute coordinates

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                        this shape bounding box Rectangle object

                        ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NRfQdY6nVZ43N5qvtO12j","name":"worldToLocal","brief":"","scope":"instance","type":"MethodDoc","description":"

                        convert the given world coordinates into "local" (screen) coordinates

                        ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                        an optional vector object where to set the converted value

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                        a vector with the converted local coordinates

                        ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oETmvSCsHEK1eeu79cVq6","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                        called when the anchor point value is changed

                        ","params":[{"identifier":"x","optional":false,"description":"

                        the new X value to be set for the anchor

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        the new Y value to be set for the anchor

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"-7XXLScHmpN8XoH42w52B","name":"CanvasRenderer","brief":"","type":"ClassDoc","description":"

                        a canvas renderer object

                        ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"P2uhtBsh1wHSeCuFbvNk6","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                        the default method to sort object ("sorting", "z-buffer")

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dsB00TwOEoaEuhSeuom-I","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        the requested video size ratio

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"48QZDqdNjR8FmcPnLDZVY","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        return the height of the canvas which this renderer draws to

                        ","params":[],"returns":[{"description":"

                        height of the system Canvas

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qde51Ba9FS4lTb6o3pPLD","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                        true if the current rendering context is valid

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HeVxr04yCTVsSpDQNKyCD","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        The Path2D instance used by the renderer to draw primitives

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PZ_QcnYvppqAeea4s1UPE","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

                        the scaling ratio to be applied to the main canvas

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U2Z1WhShhDfmpG5jfx4xZ","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                        The given constructor options

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rlhuP0Fq45GWEHpgQeRG_","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

                        The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nKkVZ9YuvQYttg-1EaJym","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                        return the width of the canvas which this renderer draws to

                        ","params":[],"returns":[{"description":"

                        width of the system Canvas

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"f3EJYNpHDB1Q1bjn4hTz6","name":"beginPath","brief":"","examples":[{"caption":"","code":"// First path\nrenderer.beginPath();\nrenderer.setColor(\"blue\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(200, 20);\nrenderer.stroke();\n// Second path\nrenderer.beginPath();\nrenderer.setColor(\"green\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(120, 120);\nrenderer.stroke();"}],"scope":"instance","type":"MethodDoc","description":"

                        starts a new path by emptying the list of sub-paths. Call this method when you want to create a new path

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"62njXLgr51uKOox576BN-","name":"clear","brief":"

                        prepare the framebuffer for drawing a new frame

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5OvohipNUN77tmVM7HTZM","name":"clearColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Clears the main framebuffer with the given color

                        ","params":[{"identifier":"color","optional":true,"default":"\"#000000\"","description":"

                        CSS color.

                        ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"opaque","optional":true,"default":"false","description":"

                        Allow transparency [default] or clear the surface completely [true]

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"6j3MFUzs8a3w9t42qOODv","name":"clearMask","brief":"","scope":"instance","see":["CanvasRenderer#setMask"],"type":"MethodDoc","description":"

                        disable (remove) the rendering mask set through setMask.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"prapi3W78BQjQD6-iZfV6","name":"clearRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Erase the pixels in the given rectangular area by setting them to transparent black (rgba(0,0,0,0)).

                        ","params":[{"identifier":"x","optional":false,"description":"

                        x axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        y axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                        The rectangle's width.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        The rectangle's height.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Dhfc0YJgBKlpsSubjqU_8","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                        clear the rendering tint set through setTint.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9oLbu2bKlKQ8lMsl9WwNf","name":"clipRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        clip the given region from the original canvas. Once a region is clipped,\nall future drawing will be limited to the clippe...","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jjvflCx7Q1oChHAskdiJP","name":"closePath","brief":"

                        add a straight line from the current point to the start of the current sub-path. If the shape has already been closed or has only one point, this function does nothing

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_zegw7SBwZ9H19Aiz90CO","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

                        optional parameters for the renderer

                        ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8n2XfvlmUSpmpMQa6_Wcl","name":"createPattern","brief":"","examples":[{"caption":"","code":"let tileable = renderer.createPattern(image, \"repeat\");\nlet horizontal = renderer.createPattern(image, \"repeat-x\");\nlet vertical = renderer.createPattern(image, \"repeat-y\");\nlet basic = renderer.createPattern(image, \"no-repeat\");"}],"scope":"instance","see":["ImageLayer#repeat"],"type":"MethodDoc","description":"

                        Create a pattern with the specified repetition

                        ","params":[{"identifier":"image","optional":false,"description":"

                        Source image to be used as the pattern's image

                        ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"repeat","optional":false,"description":"

                        Define how the pattern should be repeated

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasPattern","kind":"canonical"},{"value":"CanvasPattern","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dYGrvll_B3MwZNAnVEL9G","name":"drawImage","brief":"","examples":[{"caption":"","code":"// Position the image on the canvas:\nrenderer.drawImage(image, dx, dy);\n// Position the image on the canvas, and specify width and height of the image:\nrenderer.drawImage(image, dx, dy, dWidth, dHeight);\n// Clip the image and position the clipped part on the canvas:\nrenderer.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);"}],"scope":"instance","type":"MethodDoc","description":"

                        Draw an image onto the main using the canvas api

                        ","params":[{"identifier":"image","optional":false,"description":"

                        An element to draw into the context.

                        ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"sx","optional":false,"description":"

                        The X coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sy","optional":false,"description":"

                        The Y coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sw","optional":false,"description":"

                        The width of the sub-rectangle of the source image to draw into the destination context. If not specified, the entire rect...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sh","optional":false,"description":"

                        The height of the sub-rectangle of the source image to draw into the destination context.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dx","optional":false,"description":"

                        The X coordinate in the destination canvas at which to place the top-left corner of the source image.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dy","optional":false,"description":"

                        The Y coordinate in the destination canvas at which to place the top-left corner of the source image.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dw","optional":false,"description":"

                        The width to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the image...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dh","optional":false,"description":"

                        The height to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the imag...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"V6htaVDgSUAQZFHIKXttC","name":"drawPattern","brief":"","scope":"instance","see":["CanvasRenderer#createPattern"],"type":"MethodDoc","description":"

                        Draw a pattern within the given rectangle.

                        ","params":[{"identifier":"pattern","optional":false,"description":"

                        Pattern object

                        ","dataType":{"tokens":[{"value":"CanvasPattern","kind":"canonical"},{"value":"CanvasPattern","kind":"canonical"}],"template":"%1"}},{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"TsekJSoMj5FetFngh0Smc","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

                        fill the given shape or the current defined path

                        ","params":[{"identifier":"shape","optional":true,"description":"

                        a shape object to fill

                        ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"FiEvd7HxZYQ_yKZj31nT_","name":"fillArc","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Fill an arc at the specified coordinates with given radius, start and end points

                        ","params":[{"identifier":"x","optional":false,"description":"

                        arc center point x-axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        arc center point y-axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

                        start angle in radians

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

                        end angle in radians

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

                        draw arc anti-clockwise

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"jtyzJep1Jq1gI3VvJR8D2","name":"fillEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Fill an ellipse at the specified coordinates with given radius

                        ","params":[{"identifier":"x","optional":false,"description":"

                        ellipse center point x-axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        ellipse center point y-axis

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                        horizontal radius of the ellipse

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                        vertical radius of the ellipse

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"lXbkl9Wor7VDYCnurhCd3","name":"fillLine","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Fill a line of the given two points

                        ","params":[{"identifier":"startX","optional":false,"description":"

                        the start x coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

                        the start y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

                        the end x coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

                        the end y coordinate

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Pa4JzedC2Lgymb3DzFcIs","name":"fillPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Draw a a point at the specified coordinates

                        ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0aOkH0lWPQjjik0rHSzSi","name":"fillPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Fill the given me.Polygon on the screen

                        ","params":[{"identifier":"poly","optional":false,"description":"

                        the shape to draw

                        ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aYC8P3-IRAmw2Ay8UY6r4","name":"fillRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Draw a filled rectangle at the specified coordinates

                        ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"N5Phd0jkDi0H45ROolALK","name":"fillRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Draw a rounded filled rectangle at the specified coordinates

                        ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"3bv0LlVkAM4t2Xq5sY4g5","name":"flush","brief":"

                        render the main framebuffer on screen

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vgwg5e4H8TFDLGjx9wCIc","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

                        returns the current blend mode for this renderer

                        ","params":[],"returns":[{"description":"

                        blend mode

                        ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"Hv482XYCMiL-NVWQW4zHE","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return a reference to the canvas which this renderer draws to

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u04qx91lpFG95zkUs2nTf","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                        get the current fill & stroke style color.

                        ","params":[],"returns":[{"description":"

                        current global color

                        ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"koEZ_VVt4kGax1pjF24Bn","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return a reference to this renderer canvas corresponding Context

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D | WebGLRenderingContext","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"1lSK7OHZb3AgLPBz02uMh","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Returns the 2D Context object of the given Canvas
                        \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

                        use false to disable transparency

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OvSpgVYvRaepNVasvyJqM","name":"getGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                        Return the global alpha

                        ","params":[],"returns":[{"description":"

                        global alpha value

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"amtiGfME_W0eUnkchotsj","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

                        return a reference to the screen canvas

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"L2P-ckVjBOEQLybEO3jZa","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

                        return a reference to the screen canvas corresponding 2d Context
                        \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9qgyPhxxjz44jzYm96pvt","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                        return the current global alpha

                        ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KZ6RE1apsqbxHqstDIVvW","name":"lineTo","brief":"

                        adds a straight line to the current sub-path by connecting the sub-path's last point to the specified (x, y) coordinates.

                        ","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false},{"identifier":"y","optional":false}],"returns":[],"extends":[],"implements":[]},{"id":"r3utmT208yoytJvVn4kvJ","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                        begins a new sub-path at the point specified by the given (x, y) coordinates.

                        ","params":[{"identifier":"x","optional":false,"description":"

                        The x axis of the point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        The y axis of the point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5Ne1XAVsK4bNsQaN5Mve1","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                        check if the given rect or bounds overlaps with the renderer screen coordinates

                        ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                        true if overlaps

                        ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FlvemsGU_IndtEwVjFwBX","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        creates a rectangular path whose starting point is at (x, y) and whose size is specified by width and height.

                        ","params":[{"identifier":"x","optional":false,"description":"

                        The x axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        The y axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                        The rectangle's width.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        The rectangle's height.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HQfM4_S6YlPuyGapBsP8f","name":"reset","brief":"

                        Reset context state

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"voArBEeWrq1RzVv0PqE7Z","name":"resetTransform","brief":"

                        Reset the canvas transform to identity

                        ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sSpPY9AwkYykLsFpZruhv","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                        resizes the system canvas

                        ","params":[{"identifier":"width","optional":false,"description":"

                        new width of the canvas

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        new height of the canvas

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"oHcpX8PvBYGFjoBELNwez","name":"restore","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

                        restores the most recently saved renderer state by popping the top entry in the drawing state stack

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pzV-7iOewW1gJQMVDDgxr","name":"rotate","brief":"","examples":[{"caption":"","code":" // Rotated rectangle\n renderer.rotate((45 * Math.PI) / 180);\n renderer.setColor(\"red\");\n renderer.fillRect(10, 10, 100, 100);\n\n // Reset transformation matrix to the identity matrix\n renderer.setTransform(1, 0, 0, 1, 0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

                        adds a rotation to the transformation matrix.

                        ","params":[{"identifier":"angle","optional":false,"description":"

                        the rotation angle, clockwise in radians

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mxCNsLgy_Uvggl8NU6Cas","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                        adds a rounded rectangle to the current path.

                        ","params":[{"identifier":"x","optional":false,"description":"

                        The x axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        The y axis of the coordinate for the rectangle starting point.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                        The rectangle's width.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                        The rectangle's height.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                        The corner radius.

                        ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"kuBcdU2Sq3OwOubs582Vx","name":"save","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

                        saves the entire state of the renderer by pushing the current state onto a stack.

                        ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TpZ565AyYhH5fgiUuJ9Cf","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                        adds a scaling transformation to the renderer units horizontally and/or vertically

                        ","params":[{"identifier":"x","optional":false,"description":"

                        Scaling factor in the horizontal direction. A negative value flips pixels across the vertical axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                        Scaling factor in the vertical direction. A negative value flips pixels across the horizontal axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"n896R5c-RCDF-z33YyNTu","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

                        enable/disable image smoothing (scaling interpolation) for the given context

                        ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"4NUdzxztVl-AA3MFJOieA","name":"setBlendMode","brief":"","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation"],"type":"MethodDoc","description":"

                        set a blend mode for the given context.
                        \nSupported blend mode between Canvas and WebGL remderer :

                        \n
                          \n
                        • &q...","params":[{"identifier":"mode","optional":true,"default":"\"normal\"","description":"

                          blend mode : "normal", "multiply", "lighter, "additive", "screen"

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CCWuOT7nekUve3tCtGj36","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Set the current fill & stroke style color.\nBy default, or upon reset, the value is set to #000000.

                          ","params":[{"identifier":"color","optional":false,"description":"

                          css color value

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[],"extends":[],"implements":[]},{"id":"dIYZ_S7tj8PU8t-sQdjN9","name":"setGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Set the global alpha

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          0.0 to 1.0 values accepted.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aQ4DxK08Iw1Kiori9dAJi","name":"setLineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Set the line width on the context

                          ","params":[{"identifier":"width","optional":false,"description":"

                          Line width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"axmfWJsdAGqj12GPtY0K5","name":"setMask","brief":"","scope":"instance","see":["CanvasRenderer#clearMask"],"type":"MethodDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nIf the drawing or rendering area is l...","params":[{"identifier":"mask","optional":true,"description":"

                          the shape defining the mask to be applied

                          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

                          either the given shape should define what is visible (default) or the opposite

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"xthFtKMc0A6pNMq-6tv9y","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set/change the current projection matrix (WebGL only)

                          ","params":[{"identifier":"matrix","optional":false,"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zkr6y939uSkcD-QiNbjs7","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set a coloring tint for sprite based renderables

                          ","params":[{"identifier":"tint","optional":false,"description":"

                          the tint color

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

                          an alpha value to be applied to the tint

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iqyN74vGoWIPDQyxxN6yY","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Reset (overrides) the renderer transformation matrix to the\nidentity one, and then apply the given transformation matrix.

                          ","params":[{"identifier":"a","optional":false,"description":"

                          a matrix2d to transform by, or a the a component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                          the b component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                          the c component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                          the d component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                          the e component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                          the f component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FECqoyIkal9ePeOSf9Hjk","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

                          stroke the given shape or the current defined path

                          ","params":[{"identifier":"shape","optional":true,"description":"

                          a shape object to stroke

                          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"BzFZeay6UmXAm888KUKjO","name":"strokeArc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke an arc at the specified coordinates with given radius, start and end points

                          ","params":[{"identifier":"x","optional":false,"description":"

                          arc center point x-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          arc center point y-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

                          start angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

                          end angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

                          draw arc anti-clockwise

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          also fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"b7i6zDadSpHRMEGMZNpmL","name":"strokeEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke an ellipse at the specified coordinates with given radius

                          ","params":[{"identifier":"x","optional":false,"description":"

                          ellipse center point x-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          ellipse center point y-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          horizontal radius of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          vertical radius of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          also fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"iNa2b275x_2WPPbJwdTzD","name":"strokeLine","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke a line of the given two points

                          ","params":[{"identifier":"startX","optional":false,"description":"

                          the start x coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

                          the start y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

                          the end x coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

                          the end y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jphf-AL4EvSJi7HBFVDcl","name":"strokePoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke a Point at the specified coordinates

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dkiWSwN8mBZLOiUAVn0fA","name":"strokePolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke the given me.Polygon on the screen

                          ","params":[{"identifier":"poly","optional":false,"description":"

                          the shape to draw

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          also fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Z23DLGMFeestdsq8ElvO4","name":"strokeRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke a rectangle at the specified coordinates

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          also fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"IvAMtwNQzZ9rXEaT7sxkB","name":"strokeRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Stroke a rounded rectangle at the specified coordinates

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          also fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"9hC7sKj7qM-uWH554d99A","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          tint the given image or canvas using the given color

                          ","params":[{"identifier":"src","optional":false,"description":"

                          the source image to be tinted

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

                          the color that will be used to tint the image

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

                          the composition mode used to tint the image

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          a new canvas element representing the tinted image

                          ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"UTZlVbzlTk5hfIn99pOqy","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates a Blob object representing the last rendered frame

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a Blob object representing the last rendered frame

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"otxm6eEbsfFFiZ2MSuA44","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

                          returns a data URL containing a representation of the last frame rendered

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a string containing the requested data URL.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M_KWYxjVt3tBiM1TEehAu","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning an ImageBitmap.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jNNd6urgUQ4BbpIZ3qpAs","name":"transform","brief":"","scope":"instance","see":["{@link CanvasRenderer.setTransform} which will reset the current transform matrix prior to performing the new transformation"],"type":"MethodDoc","description":"

                          Multiply given matrix into the renderer tranformation matrix

                          ","params":[{"identifier":"a","optional":false,"description":"

                          a matrix2d to transform by, or a the a component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                          the b component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                          the c component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                          the d component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                          the e component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                          the f component to multiply the current matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wkFd9g9xlmDrfK80lgDbd","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds a translation transformation to the current matrix.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          Distance to move in the horizontal direction. Positive values are to the right, and negative to the left.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          Distance to move in the vertical direction. Positive values are down, and negative are up.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"V-BKRNKnPlBZgO9qJxLDG","name":"CanvasTexture","brief":"","type":"ClassDoc","description":"

                          Creates a Canvas Texture of the given size\n(when using WebGL, use invalidate to force a reupload of the corre...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"1afruDq5VvVIgQkDjwtK-","name":"canvas","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the canvas created for this CanvasTexture

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0f7UgaKIqNVXNXUgbGS2i","name":"context","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the rendering context of this CanvasTexture

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7AR0mEM6gfknZ1kkG1BX4","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The height of this canvas texture in pixels

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GuTPczpCP5uX5Pcw9U3cK","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The width of this canvas texture in pixels

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5O5hNZO2IkDgJTmmuVLyu","name":"clear","brief":"

                          Clears the content of the canvas texture

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NSmF0wiDkFaNqEs0sSPq7","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"width","optional":false,"description":"

                          the desired width of the canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          the desired height of the canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"attributes","optional":false,"description":"

                          The attributes to create both the canvas and context

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"attributes.context","optional":true,"default":"\"2d\"","description":"

                          the context type to be created ("2d", "webgl", "webgl2")

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.offscreenCanvas","optional":true,"default":"false","description":"

                          will create an offscreenCanvas if true instead of a standard canvas

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.willReadFrequently","optional":true,"default":"false","description":"

                          Indicates whether or not a lot of read-back operations are planned

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"attributes.antiAlias","optional":true,"default":"false","description":"

                          Whether to enable anti-aliasing, use false (default) for a pixelated effect.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"WOFDb1Tf2SSNHgSduhbGx","name":"getImageData","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns an ImageData object representing the underlying pixel data for a specified portion of this canvas texture.\n(Note: ...","params":[{"identifier":"x","optional":false,"description":"

                          The x-axis coordinate of the top-left corner of the rectangle from which the ImageData will be extracted

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          The y-axis coordinate of the top-left corner of the rectangle from which the ImageData will be extracted

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          The width of the rectangle from which the ImageData will be extracted. Positive values are to the right, and negative to t...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          The height of the rectangle from which the ImageData will be extracted. Positive values are down, and negative are up

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          The ImageData extracted from this CanvasTexture.

                          ","dataType":{"tokens":[{"value":"ImageData","kind":"canonical"},{"value":"ImageData","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"52te--md1gtaAlg-T3yio","name":"invalidate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          invalidate the current CanvasTexture, and force a reupload of the corresponding texture\n(call this if you modify the canva...","params":[{"identifier":"renderer","optional":false,"description":"

                          the renderer to which this canvas texture is attached

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"XLxWSXFF5rFps1ABMDavL","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Resizes the canvas texture to the given width and height.

                          ","params":[{"identifier":"width","optional":false,"description":"

                          the desired width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          the desired height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MJ_gcdNBgZNTfcWe1oGZ2","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

                          enable/disable image smoothing (scaling interpolation)

                          ","params":[{"identifier":"enable","optional":true,"default":"false","description":"

                          whether to enable or not image smoothing (scaling interpolation)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"lHsRdvaNjycP3PghNAOFb","name":"toBlob","brief":"","examples":[{"caption":"","code":"canvasTexture.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates a Blob object representing the image contained in this canvas texture

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a Blob object representing the image contained in this canvas texture

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6PUVuMG5j37VIL2U8PNrM","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

                          returns a data URL containing a representation of the most recently rendered image of this canvas texture\n(not supported b...","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a string containing the requested data URL.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qWYcKV6GMQdTlT1QgrX7i","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"canvasTexture.transferToImageBitmap().then((bitmap) => console.log(bitmap));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates an ImageBitmap object from the most recently rendered image of this canvas texture

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning an ImageBitmap.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"Qs19jWoRwsEyWisFB31Nn","name":"Collectable","brief":"","type":"ClassDoc","description":"

                          a basic collectable helper class for immovable object (e.g. a coin)

                          ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"0acS5O8lilt5AUzCX47fb","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Lfnz3vtJL8Ws5-z1XXQh9","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bPQo8jNJfkSlXFUPFdAfC","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L-1Sj0GXOlr9UW8jEmcEB","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9xtaZT57Na8a_ZjBwx9JP","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          pause and resume animation

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"43MSvXIyHtrdpJoa5ersS","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BRarptDfRIUAr1aOQ-qaI","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CrBRdITuZJxlGP6xCmCca","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OMx8ahx_YTDHLFLwuMO3y","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KC9TuTtnuDxC2wHdabV1-","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"36ZSmEsDNiVrkePWac2im","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s0CVKiuuxjt-ZicSxw7wu","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UpO86kCwUNNjWuMb7jV5e","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f8sGlvPi4YXmwVChpVWNP","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L0GVXw3f5uuqlbCd4g9dB","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UXrTUIez7M9eVu2Qc20Z-","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BgFQ8cRUQ_UluqOEiCHpb","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hPEitar8J8USmCDotK15W","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wz8wwgFl2HtZsoh3R9JCM","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vazCbMi8McadUe3X0UVIf","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EQPh5i3TEsG969F1mwoXX","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sLSAW3ZaKvV2uFBHxgXzo","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HFdajBfecjccnLFngb-WS","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LNQmYL6SyV0jXvDUKo7aO","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SkUl5ruxwSFTpOA8pRC2l","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p8_6WPhLzBKNxIrAjWJR6","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0hMBgLgxskCLyBcGNc1Sx","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AUVwPtCcTL0g5IfnJxYXV","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                          global offset for the position to draw from on the source image.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J3Ns4izAnjBs4-ASN8V9-","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rFu1aGZzmWT8mzSu6cqOe","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RHPy8yed2RpXVMDB8o7Z0","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O8QTxOnPn8q1HrXaPLIGA","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V2HJNZEt4c9LKm6pkhSxS","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8rEuJDSbcuy7OCc6PWAby","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bu33lox494Ex-A3uXs4E2","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pGVMC6S976PmUOC6gaykq","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x_4pvK_e41cd_qmy-0b_V","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4l2LYasaGEmDGrZwp_nMY","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iR8S6uM_JDgEz7BkYMVbX","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L-o6FWFBeNK7NJZIgc5Sk","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          add an animation
                          \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                          list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                          ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                          cycling speed for animation in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          frame amount of frame added to the animation (delay between each frame).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q5Q5J6PB5xOEqzOSpbNQR","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0SCklhoOJ5SW1xcq3J7qN","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AkwKNQoktkAoOiVX6iN_F","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j6e2hFty811MUEfvkWc3T","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the collectable

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the collectable

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          See {@link Sprite}

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"TMwSSN054syhFNsn4baMq","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"wtTj9bFG_sGu_L2Bg2AUD","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"O4lZcSbGQGb9KocARLF3S","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oU5nt2MXKGkCiLuhrru2h","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1p5p9E8luD8zliWAT6Csu","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                          make the object flicker

                          ","params":[{"identifier":"duration","optional":false,"description":"

                          expressed in milliseconds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                          Function to call when flickering ends

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zid7d8aG0_uiQ1wqqtm4V","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QnBWEj9Hqf46RiNVjZB9T","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SE-uymBKcR972mPBUHk1y","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YQ3m3GiRYQrrxL9NCFA3c","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZTyUQegdx8GjXnmv1GduI","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current animation frame index.

                          ","params":[],"returns":[{"description":"

                          current animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TbO7S8-mIwKD6lgjtZLjA","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"DX3155mdYAHI1Eku1mZ9X","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-fqF8Y6LHxbWFSGeXeBvQ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rTcPNydR90Wgi5d2n1d2d","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          return true if the specified animation is the current one.

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"k9KUUp_4LK-s2e2VuF0ee","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LUIyVJS4nYYINeZPMi7se","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the flickering state of the object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FBA5yLRlp_bbULPuLWcVx","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1kvcAANkMHqC5n9ppTyYH","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vvDlimjXlcE9jjYbggovp","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4NMsxeaVyy0FlgRlXi6vQ","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"2ixqKm8BEAajnW27Ip1BG","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"5C6fNYGy4C7Ngw_BVA7aT","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"2klttF3imDvkkxLyRXP2G","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5W5ePtl-wJEaTXICMygPD","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fx6vcIQGsU4KUXE4wZTDU","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          reverse the given or current animation if none is specified

                          ","params":[{"identifier":"name","optional":true,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2zoj8rCLXRQ39n-SCmNAi","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xP61vQ0UgmfOiUCJqYD9z","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5tjwu5yV18GmPpqwC-trw","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5NscCVGQR4wqe87sZnKmf","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                          force the current animation frame index.

                          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                          animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NbrhcpDDbYnsERhTasAq0","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                          set the current animation\nthis will always change the animation & set the frame to zero

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                          animation id to switch to when complete, or callback

                          ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                          if false will reset the elapsed time counter since last frame

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qBw8DMmYcOzOEIi3i4Tty","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HgYhI_jKe3RfexqpzmD3a","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                          change the current texture atlas region for this sprite

                          ","params":[{"identifier":"region","optional":false,"description":"

                          typically returned through me.Texture.getRegion()

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ExnwiEtbftCXKuzjJJUg3","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qI0JdkAAfPJOxsE6FFv4x","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FzcDGWHbECJ1r6yV_lswq","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HPQjXLLRWrcb_10FWlfVu","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SRYSh_jlvxlMJi47Wc0-7","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"impQjWieJMMZL5mO655Yr","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gmk_sk3T75kWumDXCqUUf","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xfZ2M1bqlegr5mA3axo9p","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eyB9Qh-RaUG1XqYABscVO","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mJKM4FG0X4kaihy5bQTtf","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nJYEc2wSULymAxfN5ky_6","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this srite (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"OG0m2ny4DqCWX3lKpp5lV","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          update function.
                          \nautomatically called by the game manager {@link game}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Sprite is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gTRfGZiMTrOVyvGcay9mM","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"r2tZWcjzlILdA9AtKfByH","name":"Color","brief":"","type":"ClassDoc","description":"

                          A color manipulation object.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"yNQ5Cd__FqXnnQm4oI0w4","name":"alpha","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Color Alpha Component [0.0 .. 1.0]

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eHxCuiL7IMsKeRR3qTKdj","name":"b","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Color Blue Component [0 .. 255]

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UUWPfnj-G2fnfbLwHjvDI","name":"g","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Color Green Component [0 .. 255]

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hEi8r58nNIClds1ruRpwz","name":"r","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Color Red Component [0 .. 255]

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BYTFqLMWFcjk3yGGssVIt","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Blend this color with the given one using addition.

                          ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RokTbEetjH--2ZVHbthBX","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Create a new copy of this color object.

                          ","params":[],"returns":[{"description":"

                          Reference to the newly cloned object

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ffHmiSRVKqDccKhYKLOR-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"r","optional":true,"default":"0","description":"

                          red component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":true,"default":"0","description":"

                          green component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":true,"default":"0","description":"

                          blue component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

                          alpha value [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AV79KZ7sTQA5cYhM8MzPN","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copy a color object or CSS color into this one.

                          ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wcJtK6kDOMtbRoXTLV1St","name":"darken","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Darken this color value by 0..1

                          ","params":[{"identifier":"scale","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Vtp49i2ZKMqrbKOKMv28m","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Return true if the r,g,b,a values of this color are equal with the\ngiven one.

                          ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"h3nNPMboboS0HPvhpgmyt","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Linearly interpolate between this color and the given one.

                          ","params":[{"identifier":"color","optional":false,"dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

                          with alpha = 0 being this color, and alpha = 1 being the given one.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0xAaDKxKs-MFKpiZagQC9","name":"lighten","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Lighten this color value by 0..1

                          ","params":[{"identifier":"scale","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sta5LpzUjNI80EiwsO4Ea","name":"parseCSS","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Parse a CSS color string and set this color to the corresponding\nr,g,b values

                          ","params":[{"identifier":"cssColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3agW1HFhhJUjr27eS5RJq","name":"parseHex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Parse a Hex color ("#RGB", "#RGBA" or "#RRGGBB", "#RRGGBBAA" format) and set this ...","params":[{"identifier":"hexColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"argb ","optional":true,"default":" false","description":"

                          true if format is #ARGB, or #AARRGGBB (as opposed to #RGBA or #RGGBBAA)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YopuutQLZAUDnL6vN2eVR","name":"parseRGB","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Parse an RGB or RGBA CSS color string

                          ","params":[{"identifier":"rgbColor","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DwBK3kBNGR1oOd5xuLWIC","name":"random","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Generate random r,g,b values for this color object

                          ","params":[{"identifier":"min","optional":true,"default":"0","description":"

                          minimum value for the random range

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max","optional":true,"default":"255","description":"

                          maxmium value for the random range

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K8gsLUWOSkemIOZ-DCZBC","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Set this color to the specified value.

                          ","params":[{"identifier":"r","optional":false,"description":"

                          red component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":false,"description":"

                          green component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"description":"

                          blue component [0 .. 255]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

                          alpha value [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K5UmrExFRtWjiZU8HHCuF","name":"setFloat","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set this color to the specified normalized float values

                          ","params":[{"identifier":"r","optional":false,"description":"

                          red component [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":false,"description":"

                          green component [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"description":"

                          blue component [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"alpha","optional":true,"default":"1.0","description":"

                          alpha value [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dhaTbWdVwa2BfnAbTniPE","name":"setHSL","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set this color to the specified HSL value

                          ","params":[{"identifier":"h","optional":false,"description":"

                          hue (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"s","optional":false,"description":"

                          saturation (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"l","optional":false,"description":"

                          lightness (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EVsRBwmhOIfbIY8lg2KYD","name":"setHSV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set this color to the specified HSV value

                          ","params":[{"identifier":"h","optional":false,"description":"

                          hue (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"s","optional":false,"description":"

                          saturation (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":false,"description":"

                          value (a value from 0 to 1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"R_7rBugv5G-rOX8v18XUx","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return an Float Array representation of this object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UAciVpEmsNXN7pcYyKa1H","name":"toHex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the color in "#RRGGBB" format

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"1gdkbD16bHempFdMyLyof","name":"toHex8","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Get the color in "#RRGGBBAA" format

                          ","params":[{"identifier":"alpha","optional":false}],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"_yC_-WrLI59Z31w39kZNN","name":"toRGB","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Get the color in "rgb(R,G,B)" format

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"HGAbB-W_4F-i9H3DIq1PS","name":"toRGBA","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Get the color in "rgba(R,G,B,A)" format

                          ","params":[{"identifier":"alpha","optional":true,"default":"1.0","description":"

                          alpha value [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"xBc17ICtQIKPZcUryk4bB","name":"toUint32","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Pack this color RGB components into a Uint32 ARGB representation

                          ","params":[{"identifier":"alpha","optional":true,"default":"1.0","description":"

                          alpha value [0.0 .. 1.0]

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"gibD-ZZ9abTsNHsiBFTH1","name":"ColorLayer","brief":"","type":"ClassDoc","description":"

                          a generic Color Layer Object. Fills the entire Canvas with the color not just the container the object belongs to.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"r55c-pLmj6UcvJ-yVwpo_","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pNMduSji-UH1oHFBqGF0l","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gzCLcgBQstB7c_eTzAcuC","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ofICWSzEJggHFo75YCqXa","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xb6cLMhcds8M69xp-C_Pr","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z-PkfhmFPyWzFzFOwECSI","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f2T981IPRHj65Hb9w-sMr","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZddKqCEPinoOP83gLj56X","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ne0BcjtbyNGVa8aUlVqOG","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V-jGg_-K42MtuEgMg9rfR","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GRVTiDJXnv0RRrLVFxzdR","name":"color","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the layer color component

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HDtaq1FN7lkmanv5UMWxv","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zqFyCXO-T5XHQkHH9pjQR","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bq3tZHFJ5seKqM6QWOfY_","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uEhtEmORweQtVqgMYhUix","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZcmnA4Iqk7Of46rzDjLK3","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Uf0hwjScGhblUy0KmHfR1","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DGGQPHRpiCuHsLLh-tDLi","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MwaRhA3NLT_mq3OdDl8vA","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jZIu3i_bhxsi8k8C22Wq4","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s1UFrmopzGAd9WTCoNvt1","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5Z5vmrVFySXhmK_7Atj8Q","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4P3CCYil4_djDF2DjBS-K","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HNvUtjNj3DfyCeQSkeqTO","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wIDYzghWHmia9AnjkUNNe","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JZvn_fWDG3RIHbe9yPdmu","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OHH0jJ1kgiLeq5PQreQzT","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Ze9Gi9d4PL2hFsqutCQ7","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6t5lVuaLt1_Pacrbdfj7t","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OpZ-4nljHBH8ghz0f9meO","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5qxmC3hLyTmvEdUrtGAGU","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BD1kIxfyjcKbbXCtqdFBZ","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GVXobuK8XAW5sU7jAV0DW","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zkNh5ghAf-y2ErLjHdF0p","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RR2BYB6f62hbaBFC4PPRe","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"whB8-RDY2qmOe-xh0CvMO","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yfSmh-A2ViZmNiW1Sp8dY","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vxXW_wPlbnE0JMdOVh3PU","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I16LGEg5IuPT9ZzF6ItCf","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7RgW9BW6twjYswK7-iao7","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"name","optional":false,"description":"

                          Layer name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"color","optional":false,"description":"

                          CSS color

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"z ","optional":true,"default":" 0","description":"

                          z-index position

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"SkORn1dyVBUU03iTDE_Nf","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"EsRssQG9s2GE-xqBIkqQz","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5ApkXUjYhEiEyrz4KrMnP","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4RqxcVFDMlCCUUGM0lTJT","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jongQJBL9yhOBz-z4Bsca","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6D6ByHKZUrnM1XCaamGSl","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PX7FQai2-qBBORiie396H","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JjjE7rlXwYtPQWDgJhO0P","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BjRbEO5wN_uIZ67Zd9MK6","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ARSUpjE7GhlAxBbV5PcjL","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"byFEqTvwizWvDa9kBPVlZ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9k8Q_8umHc2ilkNL1MycJ","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gySBhSdqFfYJjtXtOO3WB","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"do4MkDeil2jpr4dN7aozR","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PEOvTgCzLhhC-kBYf2BoP","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KV1B40opkoeFjrVOqpf_Q","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CsEP5_ohFTq57mgmT3GU6","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"v1liEIDq7n8kvVhlhCyj4","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"MYOTAfW_HhkmWD8LGegMT","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"onQzDHBKGi4zqnY-xjBqE","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lN2xp_RECQ91dTo3N7t1o","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tJX5cnqhEHBvMoz0xrJSp","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mo6qZAIDblTdRVB4cz5Jv","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tpKdACQLwHazjmIhL88bp","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CP-jHu625alokIPCgMKhU","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4T7MSXG3GYd1sWY5nk-Le","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-tYkWfjVPXgVEc6rHehJA","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4_tY-4h_rU4vkl87bN0Lc","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WYMAypt74aeQW_UwobNYP","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sOjUEWZL88TQ_E6MriKLp","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nkHq2X2NyAvOrR_HMIY1S","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IjnmTbSHMGUQfHYO4DmyB","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ood6zhcsTFC1T5kI5r359","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oIZKuk_3ldTI_pISuLPPW","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"WaAdigIQf_N0E2jKy2zW0","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SQPm6JbV9c8pfuBCF1jIQ","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this color layer (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"X9zx-lnjElks1Cp3AttbI","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"YiZ8WZfAGb0wdon4rVcBm","name":"Compositor","brief":"","type":"ClassDoc","description":"

                          A base Compositor object.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"YNZ2kvpBDpr-_yqFA4iXx","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K4c67paZsoKtkzxeGXJAl","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the shader currently used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HUVRZKlSItszuKCaQ_xSE","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P6NzI0S5yVy_IZpH6gGpe","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

                          primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ckCtbP0K9BMKvyMELJcDE","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VPgm5WMXwZhnmLIEqMVny","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"20QxDiaNjsGjzPSNwpTmM","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EzvpaXlR4UVOdSGNuA7O3","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add vertex attribute property definition to the compositor

                          ","params":[{"identifier":"name","optional":false,"description":"

                          name of the attribute in the vertex shader

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

                          number of components per vertex attribute. Must be 1, 2, 3, or 4.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

                          data type of each component in the array

                          ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

                          whether integer data values should be normalized into a certain range when being cast to a float

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

                          offset in bytes of the first component in the vertex attribute array

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0XXGBlXcwRYy_cYsvYb9B","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9uFSaDxp5axsFOabtHfKF","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"renderer","optional":false,"description":"

                          the current WebGL renderer session

                          ","dataType":{"tokens":[{"value":"WebGLRenderer","kind":"canonical"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          additional settings to initialize this compositors

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.attribute","description":"

                          an array of attributes definition

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.name","description":"

                          name of the attribute in the vertex shader

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.attribute.size","description":"

                          number of components per vertex attribute. Must be 1, 2, 3, or 4.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.type","description":"

                          data type of each component in the array

                          ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.attribute.normalized","description":"

                          whether integer data values should be normalized into a certain range when being cast to a float

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"settings.attribute.offset","description":"

                          offset in bytes of the first component in the vertex attribute array

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shader","description":"

                          an array of attributes definition

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.shader.vertex","description":"

                          a string containing the GLSL source code to set

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.shader.fragment","description":"

                          a string containing the GLSL source code to set

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"CV71gLNZGi8vP7iziHajA","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Flush batched vertex data to the GPU

                          ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

                          the GL drawing mode

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bzWiOkALapmDFemxtLAwW","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set/change the current projection matrix

                          ","params":[{"identifier":"matrix","optional":false,"description":"

                          the new projection matrix

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gorzamR40lavXdqFgLm4o","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

                          Select the shader to use for compositing

                          ","params":[{"identifier":"shader","optional":false,"description":"

                          a reference to a GLShader instance

                          ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"r8Z4b7ilXahSFZrBevAGW","name":"Container","brief":"","type":"ClassDoc","description":"

                          Container represents a collection of child objects

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"uR9wiGMKYTL4YCkAmiXUQ","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RGWR7F9P1cWnbmQaY2pFb","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"stn6RzI0Ny4mlzPlrcF4I","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aQznfRD2Va3ucstTWft68","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aK9AEUcj7slQsjxB5FnAy","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the children z index should automatically be managed by the parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3KNTIyamT4bxVaH2sm3v","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the children list should be automatically sorted when adding a new child

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VBh3t6--QUeXKty3cY6ZY","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IvjS8Pt27_F5MQEHYwl9R","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a background color for this container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zu4FUf0gM36cVK07BkWoq","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LY5JgE3Zq5PTNCKETH9-a","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2UQaukaqVhg2bt8MToEXR","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UwcsmZx0ocPi2wlWv1rpn","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R1sg527KHNfhoynH-1jKH","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bce5isIaUp7ZJAt9gyMVS","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the container draw operation should clip his children to its own bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RTWOo5roqFbnVRTZPYTpM","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"23pH7AB_nmzHMhddearjY","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eddfvMwL95SHGFKj8PPA7","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yPWRt8Hdyu20ikoX_pH98","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J7oDM7vmr7nRXCCk6Ue-i","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8ZqNBeqQSpu6L2KWLovwO","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ujUWlq6v2zV-kGrN10Z98","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qJPKK8F87MwBKabEd5MO6","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kAiHfhK5NNg5dpgyNVCBY","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1aSQl3lVqKHlNBg_ETSqi","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GKQf2WCMSXrUJ0Ad9Cft7","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y9HmEFN20UYSo_Lgnvr36","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_JtiCehMe_ZDbyzB2-wQz","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"di3JoGGRTRp01R3PDpbjS","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Bqv09w9pydNG3ce-FICkd","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EFwyk6po7IEOyeQZ4sFqs","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ixq7WBcJw7HcpMu0tzU1b","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OoYI_zfJDvFUM_gBLa39P","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZCKGIVHG9Q-6lq70k1eho","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"28zUMvFoxv1gryLpGzJ2h","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pX_QBPkVJIf8895ZJD7c3","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          whether the container is the root of the scene

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Iy-PVBUM-_tsxeUD4zdMw","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7O9iqcUYwMxW1jb7FNk41","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                          The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p2U2A56ygiFC0ycdBORQn","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uLELorX-KOygcF_npTu59","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IrrSFLh-L2mlAOeGDI6u8","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3XuJ-tG7ZdOoCQdcMZ6lc","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-M6QtYRqbE3Gt0fmbeA5I","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a8VhpKaP9uUPmBna4XBcs","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add a child to the container
                          \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                          forces the z index of the child to the specified value

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the added child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sTu8S36JV41JulcgXwqJs","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add a child to the container at the specified index
                          \n(the list won't be sorted after insertion)

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                          The index at which to insert the child

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the added child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4xXWVPnMS36SCfU9BRdRw","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I7zfzibMZEU-RU3GsgCj5","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eDRcqyN0yQrvhNK4sjwfU","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fVfBruo3cNRimvmnaUD6-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                          position of the container (accessible via the inherited pos.x property)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                          position of the container (accessible via the inherited pos.y property)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":true,"default":"game.viewport.width","description":"

                          width of the container

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":true,"default":"game.viewport.height","description":"

                          height of the container

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dUKlaF-fVDVleb8oU3o9Z","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jXlE62aaw9Ke5T0DfOKHx","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZLyzENUEYSIGs4UFH5FUq","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3i5TbHUQWmgzx0l2vysrP","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"gaRi7kElFktcQnF7loWJu","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7ogJO2mUs8CWiHADUvqN2","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o3xDpxiQg_aRRXUHll44q","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                          The forEach() method executes a provided function once per child element.
                          \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                          fnction to execute on each element

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                          value to use as this(i.e reference Object) when executing callback.

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"H62-BBLOjtM2XHRo1MVaI","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tGeQVRlwAvTIrTCe9B2JV","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XLYVJeIWrCAO4s5uz2xic","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the Child at the specified index

                          ","params":[{"identifier":"index","optional":false,"description":"

                          The index of the child

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the child at the specified index

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S1Nqv2Lrkse1i907TpYos","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the child corresponding to the specified GUID
                          \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                          child GUID

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          corresponding child or null

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zg-Q3Nd7QKkoHWZMYvFum","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the list of childs with the specified name
                          \nas defined in Tiled (Name field of the Object Properties)
                          \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                          child name

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          Array of children

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"NgNoLGJQdhi4pQ0z6AGGK","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                          return the child corresponding to the given property and value.
                          \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                          Property name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                          Value of the property

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          Array of childs

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"lC_f0XugeIUaIgPPfEQkb","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the list of childs with the specified class type

                          ","params":[{"identifier":"classType","optional":false,"description":"

                          Class type

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Array of children

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"MMsjOjNmiPjzOxFveYW7-","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the index of the given Child

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                          index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9zu_uSD5NRXbAutJ1Iti-","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return all child in this container

                          ","params":[],"returns":[{"description":"

                          an array of renderable object

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"iPAg9VOgPFH7RgU-bt3Zg","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ankeu8V8Q3kkdTsMp9GJK","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the next child within the container or undefined if none

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                          child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OxKSiS2Llpd6JBPWhDiHA","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GxvN2JIiolw9ShJ3vxZeF","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the instance of the root container (i.e. the current application World container).

                          ","params":[],"returns":[{"description":"

                          root container

                          ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"blbpb_49N6-nQhGWamMCY","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if contains the specified Child

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ya4X_wqLgWHtYocXv3xZP","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Checks if this container is root or if it's attached to the root container.

                          ","params":[],"returns":[{"description":"

                          true if this container is root or if it's attached to the root container

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"o1aOUZ8CvGDM6nj4VCfuR","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-CRGbkxd7mZn_zkPq4SfR","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DzdAHRhgiZ0jMVuwoslZe","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wWxULAw1BbVZmXwXLCssh","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the child in the group one step backward (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"18aPxArh-o546M_Xlidan","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the specified child the bottom (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"x6ilfb61un_ZXghRzGydH","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the specified child to the top(z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"2W_VjnYE1xlDY9qu-_DZO","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the child in the group one step forward (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"7mSjNZJgTvNdgANL2IpR_","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                          a callback to be extended, triggered after a child has been added or removed

                          ","params":[{"identifier":"index","optional":false,"description":"

                          added or removed child index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2XJz1QnDcvv-1vwHieVOs","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"AT7BLBVCgLb2S10U8z9Z3","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ftyezYSrvaYiBBe_1jixY","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"bocHOZHPb1Yf7JwRLfGwk","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"tgafTEeEeX_ZGvPjGVUMf","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"xTt4jp2dlkF3pGlnqCQln","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PR87e9Kd04RRtX191DCDg","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be removed

                          ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                          true to prevent calling child.destroy()

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"RD84mYPocPKeeq29sLUw7","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Removes (and optionally destroys) a child from the container.
                          \n(removal is immediate and unconditional)
                          \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be removed

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                          True to prevent calling child.destroy()

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"IwrzVSGRAuSNZx5NJodpN","name":"reset","brief":"

                          reset the container, removing all childrens, and reseting transforms.

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-Ck0qg4zQK3_AbCm7r5Ap","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZNOq5M08zn5-v4I1RdbJL","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5aK-vVFmTXHk5ettdzE0X","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Hd_5s_mcE41yzAAz9ys-H","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H1R_EPkVcGuYuQdKfjaJO","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Automatically set the specified property of all childs to the given value

                          ","params":[{"identifier":"prop","optional":false,"description":"

                          property name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                          property value

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                          recursively apply the value to child containers if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"j8vTdL6YbhUJTbr1heZYu","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"JO9D8crucqQ2brKubOXuZ","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OHKFrlSt7DDsIAnf5qdH7","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h4MdQnrueDr7krZnBnfpK","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LXEsC5puA-xbIqw7E-bWT","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Manually trigger the sort of all the childs in the container

                          ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                          recursively sort all containers if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"EnBE-pmYvmG0_nWkf7Y49","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Swaps the position (z-index) of 2 children

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"atBbdjOL4f6EZvl735qtu","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v4tjHze2spvwCdaExKN-n","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XADRs9FwCWcd5GuFoRgRI","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rUPbWdQvdlIEeKItAGB2F","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"c79uE6CXe4LckYWNNBc4C","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rHfRZajePBtEtoz0F5ID5","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j-nbLivSDSYWFsjCFBkoL","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this container.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this container bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Lud_XW5X3hl5a7TM34MXx","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this renderable (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"XbnNURY1gYemKs-qC8WWE","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          container update function.
                          \nautomatically called by the application update loop {@link Application}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Container is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"RIJ6cJhSnCmUSM6fzfyEp","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"cwUX9OCGqceYjLKrvCFA5","name":"Detector","brief":"

                          the Detector class contains methods for detecting collisions between bodies using a broadphase algorithm.

                          ","type":"ClassDoc","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"ozwhPRst8lVZjhXTZYCr0","name":"response","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the default response object used for collisions\n(will be automatically populated by the collides functions)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"we7gfstVPMMCNzUo1Lukf","name":"collides","brief":"","scope":"instance","type":"MethodDoc","description":"

                          detect collision between two bodies.

                          ","params":[{"identifier":"bodyA","optional":false,"description":"

                          a reference to body A.

                          ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}},{"identifier":"bodyB","optional":false,"description":"

                          a reference to body B.

                          ","dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if colliding

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"J1ppEB16KcPLNR46EL_Sp","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"world","optional":false,"description":"

                          the physic world this detector is bind to

                          ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dnsGPZYL7T-aQhXnhTIXT","name":"shouldCollide","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determine if two objects should collide (based on both respective objects body collision mask and type).
                          \nyou can redef...","params":[{"identifier":"a","optional":false,"description":"

                          a reference to the object A.

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"b","optional":false,"description":"

                          a reference to the object B.

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if they should collide, false otherwise

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]}]},{"id":"Y3nPGd3ehaLlX8P14sCrk","name":"Draggable","brief":"","see":["DropTarget"],"type":"ClassDoc","description":"

                          A Draggable base object

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"t7HlL8Sug-lDGWLR7gFAV","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yAh6yskvgV0cqc01_bVeC","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qj-xQBpywUYa7_KFP1Q7E","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BGMF0bV2ywQFkoHXvWJL7","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KB3eVcVORy1Ocb8d2rELc","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"apFzMms08uNMctYoT3RvD","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CdMTbT6Rj_TVycw5dS9Aq","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iL6lxvYvRHL6pj0bu773q","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kJRsBnsW8vpDubT14HPMj","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E_A3I3wj_A6Kb4RIpzp8I","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HA3wC2ed7OedJ56CPbTwg","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xrL4Y1bk_T9R7g-CtBV_w","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8MsSwJafWXVN5fuMHw5oq","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DxydSOGYKALXrUEhboMgF","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dbwyzGmJexRAC_0h0emMl","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZHnlwr1MIRdCiHM9C1FFG","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NXU1OTOypJMI_Koi_ebGF","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8qKQxYdZbEW-giFi4DKa8","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"161z9E772EnYrc_sqgMG6","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x-iHQ8EsloCZct84yYi3j","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AUuOj1KM5nzdUTH0op1WG","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Cp3Xfww8VU1gHFLcnwM5z","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AmHLlD9AuNwzcWS8dHnAT","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ieDU95nvm0lihU6i_Z7IB","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vk0fhK1ReRSeKsU9F0m8C","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FYQa_DAgH_PXiSWIKTwM1","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"limnC9tsVJvkeIfScZq-N","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XqPabyLr_04oiRRA7hasC","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"trACA9lngJyCSHUq3djtv","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RJ6b1bS9D949n-_w1E_pS","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GEU9b4IkFBhmJcoQ9qdyq","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"786JDCg6KuyaVIly-Agp_","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mo5mM2cuL6yiQiP2RsOsX","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jOkntXvA2sbxGfzYIEt-h","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"89nR7OZw_MKFth3MoFhim","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6JaNgpePloRiH-pT9J0EB","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iVlq7FkQSpBBs31RITMeu","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dVhAUqqr5EVm_V340VN4_","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iXP4YOgR-OhTGBEwMcnmF","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          draggable object width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          draggable object height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"U2GVSsJYsHyH7Tp2fyP5Q","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"r7oACvtCmtl4l869WJ22-","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cyTyU1prE86EUiMwt2wEM","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7qyhfSSg84sT_56G6Bgwo","name":"dragEnd","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Gets called when the user stops dragging the entity

                          ","params":[],"returns":[{"description":"

                          false if the object stopped being dragged

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"IisfepetnHI55s6eXiG99","name":"dragMove","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Gets called when the user drags this entity around

                          ","params":[{"identifier":"e","optional":false,"description":"

                          the pointer event

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"yDhPKY2nyym2gl15OQOsi","name":"dragStart","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Gets called when the user starts dragging the entity

                          ","params":[{"identifier":"e","optional":false,"description":"

                          the pointer event

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          false if the object is being dragged

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"BwzazS_GRpGX_K-bCe0-m","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8Hv6TWLxkt3TyqNIM_v54","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QmtFSsTleJaoHk7nbUeU8","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eFSkTbfCnNEK0y9pJEZ_u","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"e0J8fYbZYOUVSrhdqEwtG","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yI3et022SK6jg9zbSPp_b","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JKwi8_PxCYZ6Jv8N0IRck","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"sTlicp8GIO2B1X3Ny3gmJ","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hNZKLhW8J20HtocqXqm1o","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kG0UUjs-MBrV8UyIV7u9u","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NvhAFa5ETK1NYaXLQPpP1","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mc_u2D4MlXhGw5BasLbLw","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9ele78I9KFcwBqk7NfIAg","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N0tk5efGnHQs2jR3TYMjy","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PsZygMuMLuy5fi9DWqIA9","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"SbPXS5YeqkJICEKmBDAO1","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"s0pe00m96UnzNAo_Zq3pA","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ILqC7-pjUM9xDKWqpVsOn","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jYa281SVfdyzc_sbzltCx","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yZReo7Vp0LzZCmJM6P64t","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tDRF3t9Is4502MRt9ZD19","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gPJkvE_R29yFq5mqpUP25","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"CptS8LyZWMiZdHXl1VX9w","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y7ZLZsqZ37X_2AnCuw8o3","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RbCE1SfZpwkjSeRdXYbLr","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7MFER4_OiMXkLJTD_q6a7","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1sMtzSj9NH6d5ZE7juKp5","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MPNHAUEZa-f3a16_tXAW5","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IlHXvEg9CEtBq5eBZ3mbk","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TQnuqngL7LnUWfm1YrlP1","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GxUPiblae9e62fCxubq-E","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"baWSsIVsSpIagSGvBrIcw","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"faN42LjSSTXmkBmBtrYYD","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ct6qC2fFCtNIPBvkgy75Y","name":"initEvents","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          Initializes the events the modules needs to listen to\nIt translates the pointer events to me.events\nin order to make them ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0Cpet3004YoZg8uN6OYMk","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"fGukkAedFzXJMreRvqJpK","name":"DraggableEntity","brief":"","deprecated":"since 10.5.0","see":["Draggable"],"type":"ClassDoc","description":"

                          Used to make a game entity draggable

                          ","params":[],"returns":[],"extends":["Entity"],"implements":[],"members":[{"id":"f6FSXp-wkV6FQXNq-60PG","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f970FuCxSuAltnB_0jVw7","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vekZ6VTklw9JSXDFiW64d","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NHSWEyKd7yUUY85OUCu7X","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kcbm0Q7iTVKDHzmss-82g","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"llVdBBFPoQfeMMtkro4lg","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0QSxSLTU_enSrHrRkj4JC","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nVhjCxQ_WQ2f7DZNzjRYK","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sm8jNy01o8QLA9tUadCJK","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gyFbruYx_VRHuths6Z2-T","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9c8FMmmNzsqGhToiq-vT8","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7WscdZvPni16C_oTW0Ebo","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cj97nLFLOUVxgzLeB3DGi","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DeXSqFWFxgypryPg0K184","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FaAz3JbxIbwbJgOdWp2iA","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PXr0_UZhsjBWaN1uLoIeB","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wVY7qn1y6Ej5Pnrot9Nsn","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xx0nkVKTOXrrSnw7x7OcP","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_B5rfjKq5MVvq8z8qGK8X","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cNy2KJQ8oS_vaXlSxzlTI","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PqcAUDCXgG3UEY_mkaui8","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ozHbfn42JRL_l6wx7TWwb","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0rpC5-DXYLHrMfGE_eqAX","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t-BQnUeUaTaNkGGmDmXhd","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hkCuKVw8bEDSQ5fblsvUL","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6NjxdBUyjxrAlA1pJYqvm","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EqMjImmSu62mXDX2ahhNe","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dALHNAh1aB4CNZXqPP94m","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2zY96JG7p7tdpd6-DnUlK","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZPx83pyepMTfSyxPEnso3","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OULtNtoN72O1RpPf0JtBV","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1hYJCztAXDEutmBxUH5q8","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EF9AY2olb6FJx-TKNyAx4","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DM81s0cj7GGc8TH5lfXDu","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dBvZZz1weS9rNmY3JrSf4","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_mYA2qK-824x0pmRUhwDl","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a17WmkcvMafDKdypQC2eF","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W8tRRU-3JzoPAEJcnpHtd","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y0wjJ2WdmqubhZ8WWf3xZ","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UjamGSz8r0LhTV_MB5WZc","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3tR0aB9GrnpolwLxSyt6i","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8JhukCTkKoPWkeSXTZNLr","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          Entity properties (see {@link Entity})

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"VjMME3e9zARos2ZOtyY47","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1ViKgZWyqry4FOAcZ08Ge","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x_CRW5U05-bpp09tiTEH9","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_IPgFNjoN6ryCnoMF90s0","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"a7cxqGqcpbxrD1ynoTf-v","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LybqgA5xlCvIutpIMm26X","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IKcZ0KQZGcZwPZ__PoWRs","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ogNSBnZlg3IayczxPO_xE","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XOFHitivNLdGZhoFcjIZr","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"X9RE6PzYdKOFe_q-PhtuS","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vXoh4qP2M5eaPjp4RK2SK","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"l7cMIz0H7FyLIXoBgPpoh","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9RA02CbSb2Ud1COQUMv4W","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nTv7lenfsBNu_DbKFVPQE","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tfGSkS_uPcsSwDfwHrrn7","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qkqKiC_Ca1rp7LAgljdTq","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"htbBL5ppsiyXDHc3cRT8H","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j9z2uzrYe54uzrbWVtL-8","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"q-mlSK74xsOX2DeIywUMU","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"JeqEcHCWJVWnp6G3Rj3U6","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"_my27HFsPJ0HJkRgymbj7","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"W79rZNtBvCosQGSaa1lZe","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AAhwAsODbOcNRHcUe6G4e","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pbp33_9Eaw65sH7JJJsmT","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q6hDTtN5jo0zkIGemDUos","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aBsCS_EsA68fMJum9dT70","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dotQO0RzIEN41l3BFJyoG","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wiDirPiKi9x95GM7WPIsJ","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5oUyHJm89EVCKdAsz1LaQ","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"xtVM0sMZyyf-UFbcNVS7O","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2bj4FU9iBCz2LlRymeX2C","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RX15Cfp7ieMHkMNgHZz5j","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7goQJApzbhC_LczZqld-_","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gxei6lRzCm57DZbRy10lN","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"04jKiFAxJ2yE1dOtpDthq","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qgT9QQH9jI45Mh_R-LiJT","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"SQ60-7dujmoIgH5TaLZ13","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this entity.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this entity bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H9fl_dboWXZ57TK9Hvo5j","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this entity (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KUt2BLconA0o2sTKGOGTa","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"svjfD0STHdrO0bUpdj3Mx","name":"DropTarget","brief":"","see":["Draggable"],"type":"ClassDoc","description":"

                          a base drop target object

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"IdezZ_IgjjGS7HXViAo-w","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FTx2Yjol58y1-bCOKzgxL","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vvYSDIr6cit0klhFA7Nm_","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vyQLm8whY0u3xk_vQOtWl","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w05TwNrWrVxlR-x7YRb3b","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wRQBE7_XAjy25-kd4Yd74","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l1jgs-2El3_dIHNVMIEng","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yIZYQ7tluBGl2KyfYGCpB","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mkTKMpAAkYp-WA7UPh9O7","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BIA0AgxVx0-z2Zc0u2s3r","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tUYw4MYk7Vk21NMF_4HAm","name":"checkMethod","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

                          the checkmethod we want to use

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3APBAXyic3qxLWdPItKry","name":"CHECKMETHOD_CONTAINS","brief":"","access":"public","defaultValue":"\"contains\"","scope":"instance","type":"PropertyDoc","description":"

                          constant for the contains method

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"duGZsBpSkM6CABK9Am7tS","name":"CHECKMETHOD_OVERLAP","brief":"","access":"public","defaultValue":"\"overlaps\"","scope":"instance","type":"PropertyDoc","description":"

                          constant for the overlaps method

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SIxe09xpmvwAWtzwWR2f0","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EV5por_80emEqyxVOjbJN","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GGIoLcMSRDlUVoHkjy0Uk","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"406nsL2zWQeQvrZf9gCva","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_xhoFznm3KfTYyjvsPls8","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I1mxcQwYTGNftmIkBuHkK","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nCtfR0y3IqciXzVyasgpw","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Yq8lJS6hIrSHFoMee2JAg","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P1TlzrCODrasKbVxVZKS0","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0pYOpmAGMKdBGwAQoFCXS","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JmOuqAE8IM2WPdyvkGeSJ","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PglpXbWYse_ltXWiWjkx3","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"84n8d9Qdkqbs7_VNXxC02","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WgRThdFtzOT-6PL_BboJe","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IWcB3ERP6tsfzVgzmg9-G","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gy_FkHUIJrA7kXs7F6w8s","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bqvJsVL54kOtnIYHZTEdj","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bGbCni59e-TwhNFIHXNuU","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PoLykmAoakgn--p1uGdMe","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GMIxlShc4viUNJPiKsMDE","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3UIp5RnI4LO2nGdpeStg","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n8Fz72qVciV8DW-OW2fgx","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HxsS7uGEarmHMcRI0AKOp","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ETcn8XrCf2vvhk_zkWon","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SGOzT5p0xRDvT5lPmLvJk","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OAnfUxpCRl5fLCaDLSzlF","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y-2OJlM4nRsp3XrHjmKyD","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GIR-PQws9Pcsu89eR6pno","name":"checkOnMe","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Checks if a dropped entity is dropped on the current entity

                          ","params":[{"identifier":"e","optional":false,"description":"

                          the triggering event

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"draggable","optional":false,"description":"

                          the draggable object that is dropped

                          ","dataType":{"tokens":[{"value":"Draggable","kind":"canonical"},{"value":"Draggable","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cqk_GL7S3BFGPKdWmtL-8","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wj-wNCEWeyR-1UIwCo4sL","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the drop target

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the drop target

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          drop target width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          drop target height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"GcGQgneUt_l6yLdoOeyoV","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"A6-MLZ4zP__5bnaawik5E","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s3bR_l9e0zy0-q03vdV-z","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CsDdTKOlnn9eaQ-4NLjTi","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ohO1Htaj5pJSedilaxH0s","name":"drop","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Gets called when a draggable entity is dropped on the current entity

                          ","params":[{"identifier":"draggable","optional":false,"description":"

                          the draggable object that is dropped

                          ","dataType":{"tokens":[{"value":"Draggable","kind":"canonical"},{"value":"Draggable","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wy8ijGZ0VxDuPAiAXSJpZ","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"UTdaSxfNdEChhamJnuNLK","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OBe0w9OqtCaG_PJ7RFc48","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kH9w0xZr6LS2cC2HSnM1m","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JFolz9fyNkYY2M30RCbyU","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DdCNAgnZ8M6NTPTiKJyKY","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"QQztgGl-LKR1bR46SDiZB","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Vj9eHiIpDdECEs_Fx9n8E","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ORuUErKDPHSBojw8ZtQoq","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1oX04J0-zJTACr4ZIzG4Y","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lwfgUuEmSGE5hPht11AYI","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pZuenmnvFtFGFI99bLZ8R","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7G2SbKuSgE0S4gTS66P9I","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MrFkEgK5_TkkqjayyFYBo","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"772R0LBEKz0eNTU_LzBNp","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"dHBu98X9Bt9V-xQpO2K5d","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NHj_ITQtgVLvTF4PQO0Oy","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dLQaRGpVrKdlx7wUonDeR","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FaWI2-azSVn6hboln0Rxi","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"i2POBbaQRr8peTIMKxZZs","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pyf1BkH3mY52S1ltTUK3B","name":"setCheckMethod","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Sets the collision method which is going to be used to check a valid drop

                          ","params":[{"identifier":"checkMethod","optional":false,"description":"

                          the checkmethod (defaults to CHECKMETHOD_OVERLAP)

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"bx_FapsLHvXc87HLQZs-I","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Xf7Uxa8UfzKqTcsgwFeSJ","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S3uDOW3jzHlRg3-GH0N5r","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7H_U1SS5Pge-QA_s0_l4l","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bQqL0_7n-976STQS5mYUk","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jJkxgssXPzA9rfka_bvkS","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fIjCccUuqYzlp11LavbqH","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tEsjYRaqP578YxMcM0xoh","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wq2k86niB_YG9q4zT5snj","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CyPiroXkHNq3jfpkq4DYm","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8KIhc-PR5COCx8_7x_aG5","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LhzGB22GLAzhz37WCM-cZ","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HhvfPc_8amJ1GN8s-cK22","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"_-Vg6AR4YWGFHti6rzk3x","name":"DroptargetEntity","brief":"","deprecated":"since 10.5.0","see":["DropTarget"],"type":"ClassDoc","description":"

                          Used to make a game entity a droptarget

                          ","params":[],"returns":[],"extends":["Entity"],"implements":[],"members":[{"id":"ctoG7I0_PGwVMew0127OY","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"74U3l8iJwAZzSZ-T0wN9L","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F0Y7A42RC0WAHEGl15kxk","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZYRLGM9f_P-JROP2rYqCA","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z1OCeopHZOmAP08cDnc0x","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BOfmE484QDz4Nm4PMm5Hy","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZQ8sBDMGpgTEGXLFNeFcr","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dYQTwjni8-KzClYZvY3Eo","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4hF940UPF38O43u3gPzNq","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"He6fZ2Wai-QFpUuBaj-AW","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m4D3eXdJP05AVN53gQApz","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MF2qp2iN1Tvh6Dn7eRqjb","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ig5UFn5DBhLmorMxcoSxk","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tUFa8EFe159JVey8Q73gh","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UBpbPjAllwkaiHB_28OhE","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"80tFH6CIjsZYy30AeiaVd","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QAvr_y7pAw5vGbAYGIOEg","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5fZ0MUsi_VBjXBpAAZPw-","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iFOv1nyg4_fKwOKc-xquq","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y0m9TdcaIFGI4kij40JQ8","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JBBwjcbyX4jgX1zcacqnn","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xlquwEwXIQ5nGGJ4zcwnv","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y9yu8Z59gTgbhVmu42DSz","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5iyV5WKW62rlsX8_Jo7Jh","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JXbE48_CMNm43cCfA0HGi","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DHbhIniktEVGafqld3GQG","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"um8AJkabghhc_IKR5p0iI","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CrHlQhUh9AQ6aL6rdDkUP","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lYuJyVTvOO-EPfRtzyX61","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lfq7O-WwJEhnRI709po33","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BXqZzCl2Mn7G-In-CZ1C_","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oaNdphKjOHdtg_UCeiz1Z","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8dxsDW_5roRR1wHoy0uap","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bSOiLSAsHC11j50L_ohl9","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OZ738Tfdll7MiVoORXr2v","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"P_LiKRtauYzvNljiKoubN","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O2hkDhP9zIyxbs6SeEE8y","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Mshb9tWkZPNcyLbGXvCNC","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DP9kv7LfRk8jdabfYdN2w","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BLeC8czzoLby_75gZeqUP","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2WzCd_OgGinyJU11uM6Oj","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sEKgK0c_x7jdfY5l6yEZf","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the draggable object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          Entity properties (see {@link Entity})

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"QdVGAv1HAuBQGZM0Ow7jR","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"k-W8od21DlvY4mCbRygeH","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z5F2xi6yj-_yThhEpuvTl","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p4wJSUurK25U7EJJM44vt","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"eA_pM0E16Yau_UGj_6Qte","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"odKH7tJ4yAHjoW9Y3N0k3","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PSDWsImR9ZRfuypZyFicB","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SNMHoJrHg7uDLlDjOuicv","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pR9h--YmEHtsPWVsQqZK9","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"omOlrRxK1En77QlbGCVR9","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lfE9cyDtBfd2lkZmlpbQq","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vE4S-XBsA-sB__B_vF60m","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"87VAu2KvhsZXAXSfhcVcQ","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y_iR3TeJZchjYVf5Q-B5A","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MbJmWbbxFxXgO0LhHXX_n","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pWtF8AWSlwyOr-6MFqJvy","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kvFpx_0TO_7EqNNKJzJTh","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0yeXGZuUyixNydMzAqFhT","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"YAV6PJZwO3Zur9ES9i0y_","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"EqLL6ieZ8vhiJJYixC-A1","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"aJl4n03wcUXCGgvSo2xXk","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4M25Q2X4mQN99KmJIBJBM","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ggo4mwSfX3verzj74xm7S","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NCV4YmuGmEoH_mHeUCH_T","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Dg-bMx5BTMLZZdTRh3Sar","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BPLRkPvV5fR9Erpn60hfE","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"EKMGQGqdPt1PiEnqkekeh","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hy771Ki_3Ww8_7MjOLhwX","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"07k5-bep-niKBcc5RttNJ","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8mc5uSxPP8g-ofVBszmnn","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3B1AoeVx4puMTJMPr970l","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oSvWf3uui9w4jPSHTjbVG","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B7Xb0Nyei8Bp2R3R_GbqD","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DcfStlPH-Tw2rpDZzwdbb","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fsrMYmVjAlirCuQMhyXV5","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-gikUJBD4IB2hjGgjbwkw","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Tusyn5Y4X_Ts2wDwGvgJ3","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this entity.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this entity bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GBpC3czNTJIvs_uV3GMYm","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this entity (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KxJzu1ekSNPruWJYGslai","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"3RJdOz7oF9MenmUyhmcYP","name":"Ellipse","brief":"","type":"ClassDoc","description":"

                          an ellipse Object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"rEy63EwK3lKnfz6vbw58N","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the center coordinates of the ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mm_ksUvhYrM68rkqnyipd","name":"radius","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Maximum radius of the ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aI4iMpJfl_Z956cpjb6T7","name":"radiusSq","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Radius squared, for pythagorean theorom

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VaJ93H8fY-p2Vp1245UQE","name":"radiusV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Pre-scaled radius vector for ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2EGqYCswslmKkIVSigJXF","name":"ratio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x/y scaling ratio for ellipse

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yfrheqwuM5fM5hKMMXXw_","name":"type","brief":"","defaultValue":"\"Ellipse\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Srg5HBeCevn-kQOwR0jKt","name":"_bounds","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                          The bounding rectangle for this shape

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wuyQFfClHweC5QqhsQb1K","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this Ellipse

                          ","params":[],"returns":[{"description":"

                          new Ellipse

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k165yR7d-vkyfL13n21VB","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the center x coordinate of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the center y coordinate of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width (diameter) of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          height (diameter) of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1hHFCtYSDejbRjlHuBVeR","name":"contains","brief":"","examples":[{"caption":"","code":"if (circle.contains(10, 10)) {\n // do something\n}\n// or\nif (circle.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          check if this circle/ellipse contains the specified point

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to check

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if contains

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"K_gx2IU3isi8iS4WyWMZh","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Dv_FrpVfkM0UAuGdmVd0G","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this Ellipse (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9DAVg76-ItlziCr_AUKw9","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Ellipse by the specified scalar.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the scale factor along the x-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          the scale factor along the y-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wfyg07UOtKA6kdRQSjvIq","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Ellipse by the specified vector.

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VALcNLujj0HCcO2ZZm4Po","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the Ellipse shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the center x coordinate of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the center y coordinate of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width (diameter) of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          height (diameter) of the ellipse

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"k5U9bW6j-7tz3ZRr23PlJ","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the given transformation matrix to this ellipse

                          ","params":[{"identifier":"matrix","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LHWNsDJjaiE3ifBZ_NFYg","name":"translate","brief":"","examples":[{"caption":"","code":"ellipse.translate(10, 10);\n// or\nellipse.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the circle/ellipse by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this ellipse

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"iTc-cUvMcUepMWBHMAy8T","name":"Entity","brief":"","type":"ClassDoc","description":"

                          a Generic Object Entity

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"6zfIIt_6mAdmOaIUrzNbZ","name":"alive","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          dead/living state of the entity
                          \ndefault value : true

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aPpHamc6VkFTciNxGc_KH","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9oHxYdOvFssMw8XMkofGO","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-a3LvIirlwJNN9rbQemVz","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C4B0OtCI5Q0HU66DX9SUA","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MLY6pWOzg5ynWxsV7kyCC","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IYH8fByq7gldF9UQNXDLn","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A0cpaVBKMNyH3e2UDEdGK","name":"body","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the entity body object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"08GaNkcjMEDq8TTHYF-NT","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BSVdsfjD-WQdqlChwpeox","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iurwudvBSqbGiMBJajJ0N","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"psGE4Hc9eP9aWwAnxGPbc","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rYcnRTWqxZNS1JFJz1Ovw","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2ndLZ7gH8ZslqDY3A39vf","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BMZm2QfQfPbN6iNAuMJZP","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YcSCDle0zRhVbh2EHMPvf","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4MG7CSnpHQgIXNp8uJrQC","name":"id","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object unique ID (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_tIsCPct-l3lZS2DQzIMh","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y4xogGye2rVutEX1I2wEG","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LVcTm30gp8Dd_bGYQ1B1h","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"biaodhZb9oJS-oSFBVm42","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VX-QpejHUMAg-5rbaINy6","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mlzganTysvS0AkyDNJPF9","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jBJbGpTsBbMoI444Z8fEm","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BR0i3GnNLO4MkQOQ5B0VY","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RcrPPE9ATFR7iAO8JU_1D","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S_KqWVcEx5uxhc0CLTb6p","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FZhfxIHv1mlyqGMi-5QcJ","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2JqpUXKFtqRaxcKx8Iw-t","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n6l46avfQegcn_PgrNkVu","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z9QQQYF5OtHcIECNjoMIY","name":"renderable","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The entity renderable component (can be any objects deriving from me.Renderable, like me.Sprite for example)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NT92ZxKAZQ2esnVuIAMTc","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WCG24VmFIzWnbPd3N1rn7","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2ArVeFUtqxavuBgpJ5hzA","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o_EmtO-DGwDnY7J1tA6Yo","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oQhO7JGWp5yEgFRiq_3Kd","name":"type","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          object type (as defined in Tiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"38gXULfFp8fFNsx8GnSNf","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9OTkWYbe48_FjhqLoICP_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TzH9lW6wnT_DUpdtQfCf6","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SEq1n0gPvWJ5NimCFFSuQ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xAGtlnpd68TqlRTEghYaS","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9oX6fAP0QvTRGkYFWROA0","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the entity object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the entity object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          Entity properties, to be defined through Tiled or when calling the entity constructor\nthe physical width the entity takes up in game

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","description":"

                          the physical height the entity takes up in game

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.name","optional":true,"description":"

                          object entity name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.id","optional":true,"description":"

                          object unique IDs

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.image","optional":true,"description":"

                          resource name of a spritesheet to use for the entity renderable component

                          ","dataType":{"tokens":[{"value":"Image | string","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"%1 | string"}},{"identifier":"settings.anchorPoint","optional":true,"default":"0.0","description":"

                          Entity anchor point

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.framewidth","optional":true,"default":"settings.width","description":"

                          width of a single frame in the given spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"default":"settings.width","description":"

                          height of a single frame in the given spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.type","optional":true,"description":"

                          object type

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.collisionMask","optional":true,"description":"

                          Mask collision detection for this object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shapes","optional":true,"description":"

                          the initial list of collision shapes (usually populated through Tiled)

                          ","dataType":{"tokens":[{"value":"Array | Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1<%2> | %3<%4> | %5<%6> | %7<%8>"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ex1oYwID4yQlrEymKqzcw","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pN4GBTXceQSSbe6x55txx","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lTrMWDoDYuaMSjj_B56cI","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SGMmI6rGHqLKhOFNDGF4L","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0z6MNxWPoFvP2TWJgcE87","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yh4OqapeujgW6jk0Mz4_S","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tYfzRbsU4_tN3-8hOVqG9","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oweZl9mvP8LYzM9Arcdib","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qlO1T7At3-R_87BxIozsf","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"-TpituV2isArBYAYcTdAW","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cv0q_0YueutpMCbvI2mba","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6UpXM22uAx6MCxamsmeDQ","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DeIQqbvqB3OKT1UerEQSE","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lwZ4HLuv4G9La7S5g-RyQ","name":"onBodyUpdate","brief":"

                          update the bounds when the body is modified

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4Nf1Jj6tu5jybG8j3eQ0I","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fq3Faox3jPqas7Yy4-4lH","name":"onDeactivateEvent","brief":"

                          onDeactivateEvent Notification function

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YxJobLDCtmW7pH4B1z-AR","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nJbpL0jbD7Q6yPtfwrHDU","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rLyYSRZu5io2sGhpE_rnp","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"2w_WJhKu1ASrlAO0xoeGV","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"7K4vBfe9T02E4KFeTRqLd","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z1SUTFWhUQje648cMJVje","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pzahu386ZKx70B-2Osipm","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qhK207uoe0TMoiDuraGUj","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wN2Qn1asnxDNQAOMvPBbz","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aBd2I5Jy5gjkJ3Lmz2uHp","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KGmV6CBxbkk28n4QkLXzy","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6Y02IETOkVx2DqViBd88w","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p2FT-cSpiglaqZp_vUwP3","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iNDNvi-C48IQJIs_QOONJ","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_JUmchxr0MiPYAvr6bqGu","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TQHgVcdC2nPrg71f8oytG","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fbKEtGy2NLkUSoO8Wa0ZX","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9WGHntz2u0aAgdAQZ120B","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BmTY0sc01_6dQbl9Yc1vR","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ptfXZD3lWdJ2J4sf3JjsH","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"R7nr17vOgXUVjRAEljvxe","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this entity.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this entity bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_YxiAXF5rks2gpd9JntoM","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this entity (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"3tznoTPgzl2RBMCZkWg91","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"V8IcEx5benKEW7KPeSoI_","name":"GLShader","brief":"","type":"ClassDoc","description":"

                          a base GL Shader object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"N5lUFiOmJsD0DOjp3TxWI","name":"attributes","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the location attributes of the shader

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fC__LZvk_95h1FGEzmcZE","name":"fragment","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the fragment shader source code

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GhKcxtNlGkhPyNiIX5Q02","name":"gl","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the active gl rendering context

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zpn_ohKakQ9jph5nsLmeg","name":"program","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the shader program (once compiled)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NfqfUqDNciDNyv77HxaEX","name":"uniforms","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the uniforms of the shader

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WF1PYMcXrnFvroJoUySuf","name":"vertex","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the vertex shader source code

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d2zK0gsGVjBdtoDNv4X26","name":"bind","brief":"

                          Installs this shader program as part of current rendering state

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"di8Mq-fnXoptg6jFMIEVY","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a basic shader\nlet myShader = new me.GLShader(\n // WebGL rendering context\n gl,\n // vertex shader\n [\n \"void main() {\",\n \" gl_Position = doMathToMakeClipspaceCoordinates;\",\n \"}\"\n ].join(\"\\n\"),\n // fragment shader\n [\n \"void main() {\",\n \" gl_FragColor = doMathToMakeAColor;\",\n \"}\"\n ].join(\"\\n\")\n )\n// use the shader\nmyShader.bind();"}],"scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Games/Techniques/3D_on_the_web/GLSL_Shaders"],"type":"MethodDoc","params":[{"identifier":"gl","optional":false,"description":"

                          the current WebGL rendering context

                          ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}},{"identifier":"vertex","optional":false,"description":"

                          a string containing the GLSL source code to set

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"fragment","optional":false,"description":"

                          a string containing the GLSL source code to set

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"precision","optional":true,"default":"auto detected","description":"

                          float precision ('lowp', 'mediump' or 'highp').

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"hhtlFfXYNaYjVh5kyVOyO","name":"destroy","brief":"

                          destroy this shader objects resources (program, attributes, uniforms)

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9CyX2JpcaRrw4GF0VGqsH","name":"getAttribLocation","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the location of an attribute variable in this shader program

                          ","params":[{"identifier":"name","optional":false,"description":"

                          the name of the attribute variable whose location to get.

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          number indicating the location of the variable name if found. Returns -1 otherwise

                          ","dataType":{"tokens":[{"value":"GLint","kind":"canonical"},{"value":"GLint","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EMcKMPJ_nibNSYv8DjvWP","name":"setUniform","brief":"","examples":[{"caption":"","code":"myShader.setUniform(\"uProjectionMatrix\", this.projectionMatrix);"}],"scope":"instance","type":"MethodDoc","description":"

                          Set the uniform to the given value

                          ","params":[{"identifier":"name","optional":false,"description":"

                          the uniform name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                          the value to assign to that uniform

                          ","dataType":{"tokens":[{"value":"object | Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"object | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"AYDmywHuVAeArJt4RT99l","name":"setVertexAttributes","brief":"","scope":"instance","type":"MethodDoc","description":"

                          activate the given vertex attribute for this shader

                          ","params":[{"identifier":"gl","optional":false,"description":"

                          the current WebGL rendering context

                          ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}},{"identifier":"attributes","optional":false,"description":"

                          an array of vertex attributes

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}},{"identifier":"vertexByteSize","optional":false,"description":"

                          the size of a single vertex in bytes

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"-Ly46Qa8zXDNI5XAK0bOj","name":"GUI_Object","brief":"","deprecated":"since 14.0.0","see":["UISpriteElement"],"type":"ClassDoc","description":"

                          A very basic object to manage GUI elements

                          ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"kYgGpIs8BsP68XOy6-cyh","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TbJi2sZ8PbmrslYNeq0bL","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"amwWbKoVuHXBMnIPNPnUD","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PddLhU9L_Z7y3LUu4phNd","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zKzmvjcIHQ4QyuTEAV_62","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          pause and resume animation

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qsjgkuPxZpYmiutCDDhVi","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3q8K8GoAsSL1Nv6UN_Uvr","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3gD7NUvNsseitIdM6bhTH","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"--BejvhjAdLx2MXoRayKO","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1ZeSRXR9GiVbrpt_g1TDF","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GjBs5yVOBFMYw5VEDl62T","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ponc7NYpx8IxwYeiaGtWS","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rtytJzrZvogKUx50w1veq","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w6lZ9h9idvkdoE_vww8u4","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BuJ5vplU3a-7mx3YwWKIq","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DHDFesvnGTa-ahDGcFglJ","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z3kMQpDEEOldqybBzvN-e","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jy2FAfgiG8khR2RdSouhX","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LElRcdJuAm5trSQdwdC0O","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nXg_jPOzLETaC3cP9BoQO","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_q7SIJYu6rCff9hzLiO_3","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8-4-KzYcmok6XJ7lVN8g2","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-J1I9X4J7ZfMf6XAtfewF","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3XpIDtz5QlIEsT9z99oRH","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"F8zUL047YUKkfE9dVvQg8","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D8orbOB3OV42O9Pm5V_P4","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sChblDLOqzYY-vQMLODqU","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WYiZfu74sOj5TqPcrN9yZ","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                          global offset for the position to draw from on the source image.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CtztikxxIgPSPsv7OHEm1","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EUvm4yRc9uPTNzauFwF2z","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0RBwfQaMzXcm-AfOG4ofv","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1MQunokEnqIserylH7G-s","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SqEH5UOnyLBO9BErH6ZD5","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cN5t6sJyar155ntmIvdxd","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1fMd29PD2gkD21WQN397x","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xo5Sahe9QP5RDX0VW73wK","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7rwtMo4_ME44tGDj4mpH3","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f_eoDZ4EJ9H-cqnkuT9E3","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6ZOGDl4kOyHuWthSGYALS","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tc3LuVhkaCuPLs082kum6","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          add an animation
                          \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                          list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                          ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                          cycling speed for animation in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          frame amount of frame added to the animation (delay between each frame).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"meiAOcxgERx44aPWPhng3","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5dnpa1SStsdP_gSgLdURP","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MXgamX7ZD7i97K11tdu_x","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jT674RD-vV74DcQcgVY16","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate of the GUI Object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate of the GUI Object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          See {@link Sprite}

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"AsT04YVafxzKJiRFrD9Ft","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"i1Iat245egvk0aND0m-dC","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lh_NpeafiKD6x5VvDaHnc","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KcQdrAtbbh1k7p_kDLwWH","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"X3VSNiqEqBC2UAFNB7lL_","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                          make the object flicker

                          ","params":[{"identifier":"duration","optional":false,"description":"

                          expressed in milliseconds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                          Function to call when flickering ends

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pbb9gcHhrTTgjHX_qxKlH","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z5zph68fQAHjUBixDumpb","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m0id8muT3FvNCWaUsS8m3","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zwRsh1OVTBO0KZsTDD9Nh","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QVrlzEWkxl0BiIvWJOE9i","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current animation frame index.

                          ","params":[],"returns":[{"description":"

                          current animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_T-L7c-rZfKR5e4EQA0vq","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Xz9i1mG8gMVW3eWEy2m3T","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bnh-OEhjzpyidg5ZPFy1-","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"t0nWdd67Aw8XBehp8Q98g","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          return true if the specified animation is the current one.

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"a4WsEJ1nnePggEsPMo_lr","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"103v0KjJ-vY6dutV1Kx1K","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the flickering state of the object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"VijjB_dWGibNVpBaYJ61n","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OEON5d5d96EdBRUVl94br","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"yccPtc2kvJWLxC8wkXtdq","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gmfFvaFHHUmAIXlfaN6Bw","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"u7pU7Y8G5X-s1WGw24tEf","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"gSbcehOJgvFXS0t_6tWY6","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"TMZd5uwj2_S03ypwdY-0m","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DpIgtN3ZoOVoZ52Rg6bxJ","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cBeQOr54bJyIRvfJfWyvb","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          reverse the given or current animation if none is specified

                          ","params":[{"identifier":"name","optional":true,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s3XBK--W8BO8ovhclttSt","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ufb1c7fNIixpkTrCvQO-j","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hxboYamqkNtjL-9PIbGBV","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BEpMJVWiqlDeHseZawxTa","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                          force the current animation frame index.

                          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                          animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q5R6BAWlmmQBtRcaYPzTM","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                          set the current animation\nthis will always change the animation & set the frame to zero

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                          animation id to switch to when complete, or callback

                          ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                          if false will reset the elapsed time counter since last frame

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zzw38DCkalt6SFyIu8s0o","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cW7L3SLDQyNJM4-yB4PIA","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                          change the current texture atlas region for this sprite

                          ","params":[{"identifier":"region","optional":false,"description":"

                          typically returned through me.Texture.getRegion()

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EPoVHErp2-Rf64dwcjw5v","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eAcl4PSEOuyxkKOQNovT7","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xl6JI2OmJRY7ZwxYcNag8","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"EALKegVvXHGbfz8h-_DOA","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zf3nJOTjkGDXVRz6dSBXq","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xW2S6dLJK7186fm7QPPNp","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h8RP65GnxUHDNa44169CL","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DOLx5ISMF9u_u_1zGtxOs","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AYeg6rJToIfqXgk1FmC4p","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WRLe0VQzaHXbuWmfaZorz","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iGw5w3vxxlr6G6eJUd99o","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this srite (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"d5fxElKF7tR-6LOcMuliY","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          update function.
                          \nautomatically called by the game manager {@link game}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Sprite is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"c0c-dF4te91lYj-8TaNWp","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"0XlowB49NdLr8kpjlKPK9","name":"ImageLayer","brief":"","type":"ClassDoc","description":"

                          a generic Image Layer Object

                          ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"Zy4jVyI4m2dw91YV5ttkW","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f-aPSi_9PkK2k3Wd07M80","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2DDVLBdk0sEap5JGRZE-7","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pt0pd71dPzRHQzOP5gr84","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0lviRKORYv6XRAQ1aBQjH","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          pause and resume animation

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6aoHYQ3v4mIyZxlvh7fwP","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2b_ozj3S9Zgy6tZjiISxD","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_hBNmLKJ4MIZodPHw59Hl","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v6X6T9bztCbrup5KMewdo","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"45Db1Hnly1aUqDXJpfypx","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9Bgf7fuJCeqGw0sFfj1rQ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hub73XIMOYjUpAT6620Ju","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d5FftVfNlWvvuciiHwNDr","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xev73nxlUr1mDuYMJfTw4","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"elcZ7PGJn4GZVlKnuA0_t","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sO951wkTcb-YgDMTUAXcI","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yoJ6T1eURFX4gblVPQezI","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2ZedXYcVr2xI0YPP16W2j","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lpmyLvvJ4lylL9z0kLWxZ","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rraXTAIvSd0uaGlzd1Pff","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-cYeRpAcTRDN4CmugSyTY","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q6nqbxUBi4PTJyuj1oJh5","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gnGiXi-O90MCCbxiAlaWQ","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eS8MSRI8llAZmAf_sLsR1","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7Gc69rPk-ruQ0swqNLudN","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xsDaomQNxQoYNT86MA4CB","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YLqc9O685MGeEmc6cQyhJ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PadePJ2AhYw5FX89ByXVw","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                          global offset for the position to draw from on the source image.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p7guFjQohrCOCAY9fzgvi","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iBK9IzC9yn_EXKN3aM87O","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HzIcwtubIfKnRiwaxLjFg","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kjmepNqbRg9XYf_aExpUK","name":"ratio","brief":"","defaultValue":"<1.0,1.0>","scope":"instance","type":"PropertyDoc","description":"

                          Define the image scrolling ratio
                          \nScrolling speed is defined by multiplying the viewport delta position by the specifie...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YNe8u3FX8Df224mQiwGLw","name":"repeat","brief":"","defaultValue":"'repeat'","scope":"instance","type":"PropertyDoc","description":"

                          Define if and how an Image Layer should be repeated.
                          \nBy default, an Image Layer is repeated both vertically and horizo...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CXPzTkC-1bqPajd1d7qWl","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QsDNJa2V8zZf9zzyJ0veW","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X-VY_qQ7w8GpmNTKYot1f","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yAmT5StZmgl8kTmhPxIXq","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZKetUYwf64CKbXpmiSPbW","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ve5lj1mK09ML9E01EGNFC","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hHQLez0IE24KMDE15M9F-","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IM_-sVvwp-H-zm4w-_H1_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2AyIIf4e8Z55MJmkR1V_J","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          add an animation
                          \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                          list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                          ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                          cycling speed for animation in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          frame amount of frame added to the animation (delay between each frame).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JIMz6ShG3PrePbST-w0OI","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"srS0N6jY_i8wZjS8lkC99","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LXZmsHUyJV4AltdGY3ugq","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rzxJegvqUxdWAeGd77reP","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a repetitive background pattern on the X axis using the citycloud image asset\nme.game.world.addChild(new me.ImageLayer(0, 0, {\n image:\"citycloud\",\n repeat :\"repeat-x\"\n}), 1);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          x coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          ImageLayer properties

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.image","description":"

                          Image reference. See {@link loader.getImage}

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1 | %2 | string"}},{"identifier":"settings.name","optional":true,"default":"\"me.ImageLayer\"","description":"

                          layer name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.z","optional":true,"default":"0","description":"

                          z-index position

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.ratio","optional":true,"default":"1.0","description":"

                          Scrolling ratio to be applied. See {@link ImageLayer#ratio}

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"settings.repeat","optional":true,"default":"\"repeat\"","description":"

                          define if and how an Image Layer should be repeated. See {@link ImageLayer#repeat}

                          ","dataType":{"tokens":[{"value":"\"repeat\" | \"repeat-x\" | \"repeat-y\" | \"no-repeat\"","kind":"canonical"},{"value":"\"repeat\"","kind":"canonical"},{"value":"\"repeat-x\"","kind":"canonical"},{"value":"\"repeat-y\"","kind":"canonical"},{"value":"\"no-repeat\"","kind":"canonical"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"settings.anchorPoint","optional":true,"default":"<0.0,0.0>","description":"

                          Define how the image is anchored to the viewport bound. By default, its upper-left corner is anchored to the viewport boun...","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"2OJ5PAey9zwaFIITlH6Y8","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"49UywE55AyYwDtll8zXDE","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F6oRN5ZbBqNtnge91Atsx","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ptqZz8svS2OaPhCS3Daxr","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7IeaRglDQjbmA_hSV2172","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                          make the object flicker

                          ","params":[{"identifier":"duration","optional":false,"description":"

                          expressed in milliseconds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                          Function to call when flickering ends

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"50HhNtDxCVI0-ZfPXPJvl","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rIAnEaT7DLXkMWDZNRCwT","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lePPCF-uIrpLgrjxPuqYh","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qA_CXdwZNiTiLArxZjLJ1","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TUIROJ8lIYrgs8aVrGlEE","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current animation frame index.

                          ","params":[],"returns":[{"description":"

                          current animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wxcL9hJ2qGgGV655RbXLR","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Ht2-lq1ebya-JkQgjqP1s","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JTC9nKm6syD_oarfvbIqc","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"W3oy6YZB7pAx523zMvAm9","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          return true if the specified animation is the current one.

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TqmQ-qprTEWyTKHEqHnHE","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"X0N-6z0BxcUzXnn4z95BN","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the flickering state of the object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"uPjGkbKJYEVFuHD0caneQ","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8AYEO5CRaGuAmAtblOMIx","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"IYSyFiRfQABD-zxCBwg_I","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9_JFr64BYFUsGprQRqnwt","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TKxvzCJRKsMjjrcS_ilGP","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"oDC4_IIdh_rbZtREWKCEQ","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"kzgKheICpg_sp3soMBxsI","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZYPaV_lbQZ-sdOzBG-hQ2","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the Image Layer to match the given size

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uuffW773pFAjzK1DJxmOJ","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          reverse the given or current animation if none is specified

                          ","params":[{"identifier":"name","optional":true,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ucm6_b6b3Fz4rPrQIyghG","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OKtx7sn-Ou147ADkPvxdi","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zSO04KqRHtTUNb5aCVo4v","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zSWkmnJ83pT6X-Upk_HEh","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                          force the current animation frame index.

                          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                          animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1p6USIShgsghKMuZ3vRYo","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                          set the current animation\nthis will always change the animation & set the frame to zero

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                          animation id to switch to when complete, or callback

                          ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                          if false will reset the elapsed time counter since last frame

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UzUKOhWcBUOzqkjt0EQk_","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LE7NjyWw95AIgb_4uZNzL","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                          change the current texture atlas region for this sprite

                          ","params":[{"identifier":"region","optional":false,"description":"

                          typically returned through me.Texture.getRegion()

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8RyJK9tH6UaQ95ILN2ZXT","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vaT09Rw2-aAheaYfN9cxq","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sOPAH1kVXnNs4kyN2H5mp","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"uwKvgvABCvgo6W7NtTWqJ","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"C5u4tuOUk5GCOur6L3WBh","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BLjGt-DMK-gzK4wmSq8-M","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5l1kHIfLHZhetXV93PYPU","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ij3jJLPbUtV6gCz_4-QY5","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rsXr8i-XaK8gpJ-duttag","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p8LPSvownMSHj22t1qfeL","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nFclu8cSGSy8117inkyOl","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this ImageLayer (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"lY0pV77mhi6Nr-NqEex19","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          update function.
                          \nautomatically called by the game manager {@link game}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Sprite is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_CgaLm-AHW0oXN9969WhT","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"ARMP2LgHlA3e4SEO2PKOx","name":"Light2d","brief":"","see":["stage.lights"],"type":"ClassDoc","description":"

                          A 2D point light.\nNote: this is a very experimental and work in progress feature, that provides a simple spot light effect...","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"J26kCT9T6--VDbAZYeB03","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IxLIOdTfwyYat34DGUn9b","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bg_nbtBlac9uyd9ZpyuVL","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8dNsgnukFujTHk2Cd4-c_","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rc8PqKEeMb_6GtS6GbESQ","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9cUXUpi7uL-RfruVjNngm","name":"blendMode","brief":"","defaultValue":"\"lighter\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the default blend mode to be applied when rendering this light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DRqQIottaP4M8nSPlxH9J","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7_5H_DZPiC4w66SlaLNqp","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2jFsT1zrY3gxxfoMEbZtJ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W0ttr0aqSbSzJMUvBUy-U","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ga4FUbY3pm6hdjkLSskKZ","name":"color","brief":"","defaultValue":"\"#FFF\"","scope":"instance","type":"PropertyDoc","description":"

                          the color of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IyEDtuUitO6MR4xnNDN1L","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KYdEvpTyb-rYOe6nYPM_l","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KXzS0RJUfQ5zioWPGvU3i","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WZJoeqZIt5mz4x6BYpmqa","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ut06FQ2ewByXq6-hcMfI6","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SccuTn4BD_Thrn0bBRnB_","name":"intensity","brief":"","defaultValue":"0.7","scope":"instance","type":"PropertyDoc","description":"

                          The intensity of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rP0RfX0wZMztvB498Ds7G","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YGPOHmCBsOaGs93silsrl","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bhnfqBzPlM9BQjlPJoSqu","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8SWE3moOqfIxFECFm3pyZ","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nj__k-Ot89o33lg7sC6pm","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"426Reb9ntrji2EXYLI2__","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4T2Nf5s8ZMhZSgXLlAqfb","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c0we3pTAsAdMmzyxUMU_O","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MlhXGsf2WKQz27hYdrJie","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UYRfX8f3u-FNSwdr6Oxov","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iBTQMaYpn7DjYtJebwmto","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tghkB4KwXimeL9HHiG_Rv","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pzxQJNbPSNxXjRZZ8u52o","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C20vwQmuKTFp5kLoJJnxb","name":"radiusX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The horizontal radius of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2m97Z--CvWm5mrqIaLr_5","name":"radiusY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The vertical radius of the light

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"378XkozSh4QkEBPev-axW","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kIFYyi990gJy-vLp-N8f1","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y_9FLFBU7nrGf4GDmkXND","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g5uEbTpbJRMy71Prb1J0d","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A_DkQ3SAG4fB-ArSPdXNT","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kl6DcsWs9JKrNNVum3xrC","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"44Y0297wPHQT_w0Ujoj3G","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CgQnejoP6XulOf5sA9v8z","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nu3tnP_jMs8eGwphq_4hI","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"muJZTCov5uGT78VUrzXnQ","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"c9_L4EMToXRiBJscslblH","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          The horizontal position of the light.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          The vertical position of the light.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusX","optional":false,"description":"

                          The horizontal radius of the light.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusY","optional":true,"default":"radiusX","description":"

                          The vertical radius of the light.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"color","optional":true,"default":"\"#FFF\"","description":"

                          the color of the light

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"intensity","optional":true,"default":"0.7","description":"

                          The intensity of the light.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"71RqHJblMMpYTzqY16j7J","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Awc5pwifpevN8K_M-938o","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WDJHo-Q_59pfgfggfjl-T","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MMt8z9edK91tjVO2sVdmI","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rQYoPqtmrXxGSzEBOwGfX","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JNQGFLhPdpYj8YbWtRlks","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aKItrW5MBMUs6tiuf33n1","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H2gvxV5Le5A5qA8RU-hoL","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MvMW5EPoa65StjOvdXlYV","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"RQRgoNOJFoMhYFMybeSCD","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yt1WO0sX345wTOVDaL4bO","name":"getVisibleArea","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a geometry representing the visible area of this light

                          ","params":[],"returns":[{"description":"

                          the light visible mask

                          ","dataType":{"tokens":[{"value":"Ellipse","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_XxjhEzNIV6bsMe9yheXH","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rvyEGnNnWOiTo8C_WMK6g","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-1XUFV0BhL6S5l4p8IEhF","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"21-LHetJz7TI4UgGOMZug","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hoK_pnalJMCeetedd1mfV","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HTzSYuE0sVeAFYzhNsUhm","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hlecZKOMeif0BWfi54xyI","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"l88sVknRmEDT2r-yksbrH","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"hktOVPwfEYBGlL-jrNln1","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nccsis82qmFq1OOgUj2Gp","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kqquBO5VRNhq9dyubJEbt","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TX4k7tP5UmwEU-Gx-CZyl","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mMv0x_zx8J01K-sr8irBP","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4vFTFOIEhbW2PugKfdBJw","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0HjncHXBLuBFreSEyC5OL","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Oojpl0dNXAmCZhF-8P5O1","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yMOS_pQaZEErBnZExGig_","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"w5uZ372EkVX5B5TTo7xtN","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qY1i9oEdkqWsB_ar0-gJ0","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cHrBi91Lo2HQzi75adenE","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QCo5kg919X3dKl3SM_mwF","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5vrm4Dp3b09frKYT3K4Sb","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OSVj3sp4O354kkdblG0Y1","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AYWlICk9ajpOlgnO2kHDv","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"l61zp8IUQ4l0tVum3sZYE","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"i6N_5RBtolEy6IA37ZbUS","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this Light2d (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"k7BZmJ6Z7hLHjiS2ePFPW","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"z8_lVI1nyv87eL9qjXq4Q","name":"Line","type":"ClassDoc","description":"

                          a line segment Object

                          ","params":[{"identifier":"x","description":"

                          origin point of the Line

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","description":"

                          origin point of the Line

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","description":"

                          array of vectors defining the Line

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"j0Dn50SOfBRiGd9uuIfx_","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zTepRfzUQ_R7CM9ykaGz-","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lvQ7o1tGeraUCNVEWXu0c","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C75D0vh8qzIVjGRfBICxG","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this line segment

                          ","params":[],"returns":[{"description":"

                          new Line

                          ","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ny_Rqfdz_Wgq4DyKRBVlO","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","description":"

                          origin point of the Line

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","description":"

                          origin point of the Line

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","description":"

                          array of vectors defining the Line

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[]},{"id":"AK0_jayIrJ9J6Xvrsf4X_","name":"contains","brief":"","examples":[{"caption":"","code":"if (line.contains(10, 10)) {\n // do something\n}\n// or\nif (line.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the Line contains the given point

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to check

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if contains

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iBAg_0VZOiYPME_f9S3w2","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ls5XBQdgRTdwaFJuteaNQ","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"LQbX8H8L1Doc0BaLRrsbq","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7SSsGQ_Y_qmh_sSX7VIgL","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision edges and normals.\nThis must be called if the points array...","params":[],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Line","kind":"canonical"},{"value":"Line","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ijt8fIkXgmcnasT1XtShZ","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"swTjIXOCrM7x5m0n2Rs5I","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given scalar.

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h2t9i0zVagLiRp25gpt26","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xfMOL3qWKE1JVjob5fgT7","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the Polygon

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2> | %3<%4>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1CHJeVW-yqdJei6nhC5b-","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HDBtriJXCnO6WWzLteXc0","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"y1Ck8YtAzCgYdfq6FsoUj","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6J2BXiQ5kqqM1OKEs0dYD","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rXs_-eVrAtF2j5sDM3r-6","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the given transformation matrix to this Polygon

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"658UYzkKoGC1pn7BFN1PG","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qVktKwJZTcosJAi0osAsz","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"AS7-D08p75TobmS_6uFa0","name":"Matrix2d","brief":"","type":"ClassDoc","description":"

                          a Matrix2d Object.
                          \nthe identity matrix and parameters position :
                          \n

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"l0HAEEcBkh4YgoG-zmue-","name":"tx","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

                          tx component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DiE53XuFDot5QwEIzQJnT","name":"ty","brief":"","scope":"instance","see":["Matrix2d.translate"],"type":"PropertyDoc","description":"

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZRe5HKMzKnTWMz4UdOOvU","name":"apply","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the current transform to the given 2d or 3d vector

                          ","params":[{"identifier":"v","optional":false,"description":"

                          the vector object to be transformed

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          result vector object.

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"1I8PdXG5Abw0V_Sk5iYa2","name":"applyInverse","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the inverted current transform to the given 2d vector

                          ","params":[{"identifier":"v","optional":false,"description":"

                          the vector object to be transformed

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          result vector object.

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"leZ0RdIGwvC_MP7WNdwR8","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clone the Matrix

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4ha6Zpm0XAJ1e8sNI0vY-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"args","optional":false,"variadic":true,"description":"

                          an instance of me.Matrix2d or me.Matrix3d to copy from, or individual matrix components (See {@link Matrix2d.setTransform}...","dataType":{"tokens":[{"value":"Matrix2d | Matrix3d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"Matrix3d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2 | %3"}}],"returns":[],"extends":[],"implements":[]},{"id":"dI0XpRIOydX_FQsbQ43np","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copies over the values from another me.Matrix2d.

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the matrix object to copy from

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7Z4iupNW3cDzF1WeVcGVs","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the two matrices are identical

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the other matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if both are equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"y4DYWX69zioscZmkeI49v","name":"fromMat3d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copies over the upper-left 3x3 values from the given me.Matrix3d

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the matrix object to copy from

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1Oqc6Es-pxjcnXsuMw1Zv","name":"identity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          reset the transformation matrix to the identity matrix (no transformation).
                          \nthe identity matrix and parameters positio...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RNc_CAnnHoM23lBx6Zudu","name":"invert","brief":"","scope":"instance","type":"MethodDoc","description":"

                          invert this matrix, causing it to apply the opposite transformation.

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d_Sb0uRGtEts0a0ZkrMIf","name":"isIdentity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns true if the matrix is an identity matrix.

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HiiBHJ_8v8CBjeJLCHIsP","name":"multiply","brief":"","scope":"instance","type":"MethodDoc","description":"

                          multiply both matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the other matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HYafB_sAamegOWNzyaGTU","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          rotate the matrix (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          Rotation angle in radians.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qss7s_jb62wDTkqjKMjJQ","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the matrix

                          ","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8DdTMBy2HM2SuPLbCs3Qq","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds a 2D scaling transformation.

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nsoRCvnGLzMADstVzrlUp","name":"scaleX","brief":"","scope":"instance","type":"MethodDoc","description":"

                          specifies a 2D scale operation using the [sx, 1] scaling vector

                          ","params":[{"identifier":"x","optional":false,"description":"

                          x scaling vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PBwpXE-SpZfz6g42S4ZXH","name":"scaleY","brief":"","scope":"instance","type":"MethodDoc","description":"

                          specifies a 2D scale operation using the [1,sy] scaling vector

                          ","params":[{"identifier":"y","optional":false,"description":"

                          y scaling vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WQ5YlX47u0zGrnG3jDqzr","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the matrix to the specified value

                          ","params":[{"identifier":"a","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"g","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"i","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sBRQ3XpXX-iNtoVcHENIF","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return an array representation of this Matrix

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kYvd-j55U82Fn-uBaGbRn","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                          convert the object to a string representation

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"npWXh5winlQyF-JITqPhj","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Multiplies the current transformation with the matrix described by the arguments of this method

                          ","params":[{"identifier":"a","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"b","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hF7hJWzz5w634hRs7aWhi","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          translate the matrix position on the horizontal and vertical axis

                          ","params":[{"identifier":"x","description":"

                          the x coordindates or a vector to translate the matrix by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          the y coordindates to translate the matrix by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iwI7MLxs1cV-ZebRqR54h","name":"transpose","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Transpose the value of this matrix.

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"7yuVZGiUZM-30O3BB7jLm","name":"Matrix3d","brief":"","type":"ClassDoc","description":"

                          a 4x4 Matrix3d Object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"mtV4w_F3jVwLdqoiIxH2m","name":"tx","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          tx component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s4tRlw1SYfu9AhOf4IWxq","name":"ty","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lSSUxYYWkkd_hYY_6pIu3","name":"tz","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          ty component of the matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZRtNe3bIyyy239z3_wrVh","name":"apply","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the current transform to the given 2d or 3d vector

                          ","params":[{"identifier":"v","optional":false,"description":"

                          the vector object to be transformed

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          result vector object.

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"XypP_NXinkVF1snJQHTBt","name":"applyInverse","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the inverted current transform to the given 2d or 3d vector

                          ","params":[{"identifier":"v","optional":false,"description":"

                          the vector object to be transformed

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          result vector object.

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"sqkvlKapPrNOQ7EIntkJy","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clone the Matrix

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bJ01AAYMotZIq5K22Jzic","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"args","optional":false,"variadic":true,"description":"

                          An instance of me.Matrix3d to copy from, or individual Matrix components (See {@link Matrix3d.setTransform}). If not argum...","dataType":{"tokens":[{"value":"Matrix3d | number","kind":"canonical"},{"value":"Matrix3d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"Iv6A1xJS4d1EAwSvCQ9vJ","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copies over the values from another me.Matrix3d.

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the matrix object to copy from

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HsKEELWDxbuAvCTVERzE6","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the two matrices are identical

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the other matrix

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if both are equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"FY638xebHivAoSWZiUILY","name":"fromMat2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copies over the upper-left 2x2 values from the given me.Matrix2d

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the matrix object to copy from

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xTeVyvxj_kWzcAP2H_XHD","name":"identity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          reset the transformation matrix to the identity matrix (no transformation).
                          \nthe identity matrix and parameters positio...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wyZOtrHWaypleMXnVcU8r","name":"invert","brief":"","scope":"instance","type":"MethodDoc","description":"

                          invert this matrix, causing it to apply the opposite transformation.

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nTzQxIO2vXjA3nQziPjvH","name":"isIdentity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns true if the matrix is an identity matrix.

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qHvQMR-oZRnCPA5uCVauk","name":"multiply","brief":"","scope":"instance","type":"MethodDoc","description":"

                          multiply both matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          Other matrix

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zXYNBgHMLJmjgwFBXj5ix","name":"ortho","brief":"","scope":"instance","type":"MethodDoc","description":"

                          generate an orthogonal projection matrix, with the result replacing the current matrix\n
                          ...","params":[{"identifier":"left","optional":false,"description":"

                          farthest left on the x-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"right","optional":false,"description":"

                          farthest right on the x-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"bottom","optional":false,"description":"

                          farthest down on the y-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"top","optional":false,"description":"

                          farthest up on the y-axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"near","optional":false,"description":"

                          distance to the near clipping plane along the -Z axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"far","optional":false,"description":"

                          distance to the far clipping plane along the -Z axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"og2xw4TeHO56XnzXjLfDg","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          rotate this matrix (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          Rotation angle in radians.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":false,"description":"

                          the axis to rotate around

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DnLRKRwtTI13eJhKi62o4","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the matrix

                          ","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

                          a number representing the depth vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kekwv_ndd8ZRDDEiDE99H","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds a 2D scaling transformation.

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"e55fmJuKCmNP882qA1HTJ","name":"scaleX","brief":"","scope":"instance","type":"MethodDoc","description":"

                          specifies a 2D scale operation using the [sx, 1] scaling vector

                          ","params":[{"identifier":"x","optional":false,"description":"

                          x scaling vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fbWn_1b2jE_ODce8HWcUu","name":"scaleY","brief":"","scope":"instance","type":"MethodDoc","description":"

                          specifies a 2D scale operation using the [1,sy] scaling vector

                          ","params":[{"identifier":"y","optional":false,"description":"

                          y scaling vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q4J6Nz9Yc6V942Q1BD1zP","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the matrix to the specified value

                          ","params":[{"identifier":"m00","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m01","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m02","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m03","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m10","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m11","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m12","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m13","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m20","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m21","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m22","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m23","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m30","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m31","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m32","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m33","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8gLjydE-AGtqR6djHZJ5r","name":"toArray","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return an array representation of this Matrix

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o3mJjxBBnSoiMLYRW5hRb","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                          convert the object to a string representation

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"uGDt0WIoupAhQuqvIqOgW","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          translate the matrix position using the given vector

                          ","params":[{"identifier":"x","description":"

                          a number representing the abscissa of the vector, or a vector object

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Vector3d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          a number representing the ordinate of the vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

                          a number representing the depth of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o63sXoGjnOHZ_KxQOWbhu","name":"transpose","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Transpose the value of this matrix.

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"oycO8_dHQkizxGV1odf2_","name":"NineSliceSprite","brief":"","see":["https://en.wikipedia.org/wiki/9-slice_scaling"],"type":"ClassDoc","description":"

                          A NineSliceSprite is similar to a Sprite, but it uses 9-slice scaling to strech its inner area to fit the size of the Rend...","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"0IuJk4DaL_3zteIFNpUbg","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q3my0ynJ6GbrWjO1X36WP","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wsFsoioCd3pzvnz1cvWXY","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k-msna4lomAbHS_QAhcVA","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3X3AYfJ69g8ULZnTf4QrO","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          pause and resume animation

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q5T5eolwu9Zdf6pAfCe5l","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iEfVMfGGjmNKDAmFWG9T3","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d9l-YmDzF9RhULOz0jTBl","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"91qGKnN7c8Ks7CJl-GXjM","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qj-uxRMUMQjt9mCOV4tyb","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hIt20rsspsgeMvgmF_K5S","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ItV-7zW93gDOy9Q7UO9hM","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6Vio5yKfoRZwfUDeS3kKl","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3A2ypI8Sr9UGcTiVeV1vY","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ludxDey2j52iWXUUxDG2F","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lQewfSElcztmMeFSwSv78","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7fIEatnnNCLvJW4GMPrwJ","name":"height","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          height of the NineSliceSprite

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rV_IA9g9oVOvqoeprS97d","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v0--KK-L5mq-LDACn-22x","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0OF6SQw838lO-sVBaC-GY","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bEeFJaMG3H3lx4GYOLwQL","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"V2rkM8z7NzOg0fOUvRF8k","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p0ZycUPnIbtWr-ERqSSJ5","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qLxKl8OMINxsl9CVCz3kQ","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iTyl7N6VjZCpY5WtHvWgv","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"liRs2Kj-piKFNIXLCkWsJ","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wpA8VxAPj4aek-_F8N4vG","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IZ1cX2KeczRcsS5-kkUZL","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                          global offset for the position to draw from on the source image.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rtweqECV4pEnRk35Nhb9P","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bvpY9LzZ-B3GBBLcHaZnW","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"x0gsCc-9-AnIp9nOpo7lO","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"I3SRUrZfWY3YMkDOOFo0d","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"miaCh1Wtn9RV0bUHsF1R4","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"E7Jfje9BCG-VEIyhvN2Yl","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VbrUiWSeaE8z8dV8IAdq5","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nqNCXtOkqbIDasCzddnhw","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kq_6Qy9GNfgwt5GLY2aT1","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lJ_JT1Js2lZef_3KRKxDi","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0DuQTaXp62LKUain3Sw6H","name":"width","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          width of the NineSliceSprite

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7jGC0A9fbEoxKhAMOXVgE","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          add an animation
                          \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                          list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                          ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                          cycling speed for animation in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          frame amount of frame added to the animation (delay between each frame).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nJa-Hyhi-PhVmXjaF92JN","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H05Zpn6O0knsrws28lT6Q","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cMhawr8B0_2ofSMpS5W0T","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"igv4SWg_6WA1-vTr9kewD","name":"constructor","brief":"","examples":[{"caption":"","code":"this.panelSprite = new me.NineSliceSprite(0, 0, {\n image : game.texture,\n region : \"grey_panel\",\n width : this.width,\n height : this.height\n});"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the sprite object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the sprite object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          Configuration parameters for the Sprite object

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.width","description":"

                          the width of the Renderable over which the sprite needs to be stretched

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","description":"

                          the height of the Renderable over which the sprite needs to be stretched

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.insetx","optional":true,"description":"

                          the width of a corner over which the sprite is unscaled (default is a quarter of the sprite width)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.insety","optional":true,"description":"

                          the height of a corner over which the sprite is unscaled (default is a quarter of the sprite height)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.image","description":"

                          reference to spritesheet image, a texture atlas or to a texture atlas

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | string"}},{"identifier":"settings.name","optional":true,"default":"\"\"","description":"

                          name of this object

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.region","optional":true,"description":"

                          region name of a specific region to use when using a texture atlas, see {@link TextureAtlas}

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.framewidth","optional":true,"description":"

                          Width of a single frame within the spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"description":"

                          Height of a single frame within the spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.tint","optional":true,"description":"

                          a tint to be applied to this sprite

                          ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.flipX","optional":true,"description":"

                          flip the sprite on the horizontal axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.flipY","optional":true,"description":"

                          flip the sprite on the vertical axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.5, y:0.5}","description":"

                          Anchor point to draw the frame at (defaults to the center of the frame).

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"EFRR7nfhXQokUw2T_t5Co","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9XyRBgZjBKBQxPBIyjFt7","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZI3BXQ6uiUs4ux658v8rg","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YueaZMP91bERxxQMMDLKB","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jSiiNzvYWfIoi2gRz-DjC","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                          make the object flicker

                          ","params":[{"identifier":"duration","optional":false,"description":"

                          expressed in milliseconds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                          Function to call when flickering ends

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u48fVBF3GiiOwShZN7OWG","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WJfrt3zjpEqD2GU5KE9bi","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UQFLBeRZ4sUAdIs4Z8cwQ","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ucwUJF0yxTunmF2XS3xcI","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"doBAQ7Z2O89Vuo9eARvS7","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current animation frame index.

                          ","params":[],"returns":[{"description":"

                          current animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FxwSMhmMZeg0xzkQGbpvp","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"dhJpxXhraJwMmBii26yDO","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HPKMM2GopA9fKKSYb61ez","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"t9k47iqRx_KgLYoDOd0CL","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          return true if the specified animation is the current one.

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"zzyxaN6bZQhaANn5t6lZr","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"h_H_jZRFsfmkKUOtRP6El","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the flickering state of the object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hON55HFYihD9sSLA1dPhs","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uuWcUIrB9_Z9kp9ZxQM0h","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"l3-JR7Q4_NKJGEdtxJP1Q","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bkuP-vrSxkgdx_XoKlcSH","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"UMZ7pp8kAkx10FQkW0-tY","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"8VJu28jtjH1B2w1RSJIMM","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"A445fZUubcJBX0CSa0ZIQ","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"krou4UCD_4-p-TVWp_8MC","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"A0RRzDXkRI1zDhdjC9bq4","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          reverse the given or current animation if none is specified

                          ","params":[{"identifier":"name","optional":true,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XqnVsi8wOw1Ob9akHu9em","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yc8IzWu00_Of_i23w7q_o","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kXvFfLvi9z_Fir5SJNIX1","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"djEQWvCbpFJTWaoBJ7-R2","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                          force the current animation frame index.

                          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                          animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_5E3kQUoQHBJ_fI4CStmu","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                          set the current animation\nthis will always change the animation & set the frame to zero

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                          animation id to switch to when complete, or callback

                          ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                          if false will reset the elapsed time counter since last frame

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kB7LFaA70KweLIpGd-FVq","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"S_vOD9mxl0YIpYhXDVTfR","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                          change the current texture atlas region for this sprite

                          ","params":[{"identifier":"region","optional":false,"description":"

                          typically returned through me.Texture.getRegion()

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bhIkxXz413Ifw_isEdaBL","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fn_hJSNFLMraInELc5dLT","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oyHm8Q0Bkd-Ffbkyb6V5k","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iKn7GOapdDz8ml1tShYvm","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1IA9_H8lWuv2S1R9Cukzk","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WFKHggwb8eHmYXWZa-Erm","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6oOKWRqc2HlmTR5riLrxS","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ecFtW7Xtz5hej_0d7vRA0","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gwtqa9oL-yLXKHWYn7mpO","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ie6OKc4tM1FU93gfvp7id","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y4BAquYKvQjhpaocn-3P4","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this srite (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vD_q1uxRUGyl19L4K-s3d","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          update function.
                          \nautomatically called by the game manager {@link game}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Sprite is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"iwVqEB4PmNK67ykzMTm6Q","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"1I9LlgLo-E3aiBflJv3rp","name":"ObjectPool","brief":"","see":["{@link pool} the default global instance of ObjectPool"],"type":"ClassDoc","description":"

                          Object pooling - a technique that might speed up your game if used properly.
                          \nIf some of your classes will be instantia...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"IuuM4mjL69bttQb97TF5W","name":"exists","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Check if an object with the provided name is registered

                          ","params":[{"identifier":"name","optional":false,"description":"

                          of the registered object class

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          true if the classname is registered

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"h9D_R7Z4xdy109mx3gIqd","name":"getInstanceCount","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the amount of object instance currently in the pool

                          ","params":[],"returns":[{"description":"

                          amount of object instance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J053QDPVB8zah87sB8JUG","name":"poolable","brief":"","examples":[{"caption":"","code":"if (!me.pool.poolable(myCherryEntity)) {\n // object was not properly registered\n}"}],"scope":"instance","see":["register"],"type":"MethodDoc","description":"

                          Check if an object is poolable\n(was properly registered with the recycling feature enable)

                          ","params":[{"identifier":"obj","optional":false,"description":"

                          object to be checked

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          true if the object is poolable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_0ah00vtkFaex-PFtOkFZ","name":"pull","brief":"","examples":[{"caption":"","code":"me.pool.register(\"bullet\", BulletEntity, true);\nme.pool.register(\"enemy\", EnemyEntity, true);\n// ...\n// when we need to manually create a new bullet:\nlet bullet = me.pool.pull(\"bullet\", x, y, direction);\n// ...\n// params aren't a fixed number\n// when we need new enemy we can add more params, that the object construct requires:\nlet enemy = me.pool.pull(\"enemy\", x, y, direction, speed, power, life);\n// ...\n// when we want to destroy existing object, the remove\n// function will ensure the object can then be reallocated later\nme.game.world.removeChild(enemy);\nme.game.world.removeChild(bullet);"}],"scope":"instance","type":"MethodDoc","description":"

                          Pull a new instance of the requested object (if added into the object pool)

                          ","params":[{"identifier":"name","optional":false,"description":"

                          as used in {@link pool.register}

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"...arguments","optional":true,"variadic":true,"description":"

                          arguments to be passed when instantiating/reinitializing the object

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          the instance of the requested object

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"V6xGy7CI2lc7X4ijYEWPQ","name":"purge","brief":"","scope":"instance","type":"MethodDoc","description":"

                          purge the object pool from any inactive object
                          \nObject pooling must be enabled for this function to work
                          \nnote: thi...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zDu9Sh8XD8RXx83h8hRLb","name":"push","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Push back an object instance into the object pool
                          \nObject pooling for the object class must be enabled,\nand object mus...","params":[{"identifier":"obj","optional":false,"description":"

                          instance to be recycled

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"throwOnError","optional":true,"default":"true","description":"

                          throw an exception if the object cannot be recycled

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          true if the object was successfully recycled in the object pool

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4pmB48NbeZmJn20hX_3Wc","name":"register","brief":"","examples":[{"caption":"","code":"// implement CherryEntity\nclass Cherry extends Sprite {\n onResetEvent() {\n // reset object mutable properties\n this.lifeBar = 100;\n }\n};\n// add our users defined entities in the object pool and enable object recycling\nme.pool.register(\"cherrysprite\", Cherry, true);"}],"scope":"instance","type":"MethodDoc","description":"

                          register an object to the pool.
                          \nPooling must be set to true if more than one such objects will be created.
                          \n(Note...","params":[{"identifier":"className","optional":false,"description":"

                          as defined in the Name field of the Object Properties (in Tiled)

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"classObj","optional":false,"description":"

                          corresponding Class to be instantiated

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recycling","optional":true,"default":"false","description":"

                          enables object recycling for the specified class

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"BHHcq2W7zLe4UMR87CNTP","name":"ObservableVector2d","brief":"","type":"ClassDoc","description":"

                          A Vector2d object that provide notification by executing the given callback when the vector is changed.

                          ","params":[],"returns":[],"extends":["Vector2d"],"implements":[],"members":[{"id":"6dxaPYjUmqIuOD1-8l-K9","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pSlUI_JhPTcWZ4nBeohBG","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          y value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Kr27mgv5-UVFv2fOT0F0K","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector values to absolute values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ok7BxvxcoGv_ORvmq5KY4","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add the passed vector to this vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j4TVzwB8zeJa9ac1IdBrf","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle between this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mkaHmHqn8vaQO8eT5IE-l","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Ceil the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector2d

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"agWzuW4NaPPEYzifBkTI5","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Ceil this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"G3oL58FZ0sCRUOLD-axyM","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clamp the vector value within the specified value range

                          ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          new me.ObservableVector2d

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vNud-OTXUYJKl7EYtlpVs","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clamp this vector value within the specified value range

                          ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"93k8KXjLiljD4VTUk4cT9","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a clone copy of this vector

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector2d

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IsCwkFHfthW9MCYTekVZ-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"default":"0","description":"

                          x value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

                          y value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          additional required parameters

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.onUpdate","description":"

                          the callback to be executed when the vector is changed

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.scope","optional":true,"description":"

                          the value to use as this when calling onUpdate

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"e53A93b05Iwn-mL4aArnL","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copy the x,y values of the passed vector to this one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WQZ130ggf_PVruQWMZlZg","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the cross product of this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          The cross product.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qpOeScSUtzspS15wy7-IX","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance between this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7EdGY65sWBnfbib6YsWYD","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Divide this vector values by the passed value

                          ","params":[{"identifier":"n","optional":false,"description":"

                          the value to divide the vector by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZdhQSmq7J-0Q8rL8fthHx","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the dot product of this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          The dot product.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MSXhOZqIWqa0OTsZlK0v9","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the two vectors are the same

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-nyC-BbqAMJL5V9H_Jitu","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Floor the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector2d

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mYTyPnmx52DlWFETkcp0U","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Floor this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-EzIIdkXWFR9BRk10voS7","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the length (magnitude) of this vector

                          ","params":[],"returns":[{"description":"

                          the length of this vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SJGSWDrsKCclCzxUS3PC9","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the square length of this vector

                          ","params":[],"returns":[{"description":"

                          The length^2 of this vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I42NGklMP2nbZ-U5nqbM1","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Linearly interpolate between this vector and the given one.

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"alpha","optional":false,"description":"

                          distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bIpwjlH72dkDHi2N5utVB","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector with the maximum value between this and the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"D36bFIsY_ouM1JIkhZ7_c","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector with the minimum value between this and the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QLUPSEmpXcrctqhv7tAVH","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

                          interpolate the position of this vector towards the given one while nsure that the distance never exceeds the given step.

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"step","optional":false,"description":"

                          the maximum step per iteration (Negative values will push the vector away from the target)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s-6_PUVYWOgfadCxv-6Z_","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Negate the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector2d

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Pdap4VgAF_2o6R2TND-BS","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Negate this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZMWB5hp63gPgLXprX1g-X","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          normalize this vector (scale the vector so that its magnitude is 1)

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q8K_6ULrpf5HS7yN7z7eL","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          change this vector to be perpendicular to what it was before.
                          \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XhrWnVhUEHRyT7wLz1Ir6","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

                          project this vector on to another vector.

                          ","params":[{"identifier":"v","optional":false,"description":"

                          The vector to project onto.

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0XS3E-hoiSvuaBhQfrZmp","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Project this vector onto a vector of unit length.
                          \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

                          The unit vector to project onto.

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"IYuiBrCgdr6_8q-y6_v4i","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this vector (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4qFzz1uE18xnEmbn4lO1G","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Multiply this vector values by the given scalar

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"veJT5rNeQCUMv403h9ogR","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Multiply this vector values by the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KnyNwDnJIwQQIGR3XVi6s","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties to the given values

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GqS7ieng_WyihwDvo69BO","name":"setCallback","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the callback to be executed when the vector is changed

                          ","params":[{"identifier":"fn","optional":false,"description":"

                          callback

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"scope","optional":true,"default":"null","description":"

                          scope

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Zt_IjN8MxqrIu7QVXjKhg","name":"setMuted","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vector value without triggering the callback

                          ","params":[{"identifier":"x","optional":false,"description":"

                          x value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          y value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tp52E4g-I6vAbRPgV7WOV","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties using the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PmJvgNatWTbBFGl-21MzQ","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties to 0

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vxTzRnyHIJatExf2QznFM","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Substract the passed vector to this vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector2d","kind":"canonical"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z1pwUBcV_M9ZJ7GOkeDFc","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Convert this vector into 2d coordinate space

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"csIYZevE-gRU6-IUVB2VA","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Convert this vector into isometric coordinate space

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6zGDmfXAP8gjHnZa1PPot","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                          convert the object to a string representation

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"sfKmubJkZAw3ASpAEhFuG","name":"toVector2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a me.Vector2d copy of this me.ObservableVector2d object

                          ","params":[],"returns":[{"description":"

                          new me.Vector2d

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"qgAnP8kr-jK63CBzBKSg2","name":"ObservableVector3d","brief":"","type":"ClassDoc","description":"

                          A Vector3d object that provide notification by executing the given callback when the vector is changed.

                          ","params":[],"returns":[],"extends":["Vector3d"],"implements":[],"members":[{"id":"oRpcuPZNopnCQHuZxIXDQ","name":"x","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          x value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g2BmVTtQ0D-QN6j8jzllo","name":"y","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          y value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"266E4gGUWUhvGmlA6thUs","name":"z","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          z value of the vector

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6NOBcHLUvewdKtN71T15Q","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector values to absolute values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"toB5eYMNJmz-NTX5cZANv","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add the passed vector to this vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zOMQGkMnVUm67MVbtKNGg","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle between this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5rMeY2ZXAgRYLPJFGv392","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Ceil the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector3d

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4cpPYiwI10SlYPMwli8qt","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Ceil this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KTX9rTkxczv0A0PWHo_bK","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clamp the vector value within the specified value range

                          ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          new me.ObservableVector3d

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jEPWA8KvDIzY4UzwlhbAE","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Clamp this vector value within the specified value range

                          ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mr-_MSdMqh1egoo-g6cy3","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a clone copy of this vector

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector3d

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qAHgKDOQzrSuXyzG-y0YN","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"default":"0","description":"

                          x value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","description":"

                          y value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":false,"default":"0","description":"

                          z value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          additional required parameters

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.onUpdate","description":"

                          the callback to be executed when the vector is changed

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.scope","optional":true,"description":"

                          the value to use as this when calling onUpdate

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"QC04SVuUdVSc-7dr9Gb3T","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Copy the components of the given vector into this one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_k7Fle0KjUQ1RQY0Npjel","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

                          calculate the cross product of this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I99a1sNA-2d1_iPg_xFpt","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance between this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"39DNp8o9wng5ZESzqPlkf","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Divide this vector values by the passed value

                          ","params":[{"identifier":"n","optional":false,"description":"

                          the value to divide the vector by

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K4cg3mR8fvkimqyj0ScID","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the dot product of this vector and the passed one

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          The dot product.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hHyuJDM9bxEHIDK6yFhDs","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the two vectors are the same

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"z1ot19ZHZFl4h_3bqjqqd","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Floor the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector3d

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l4O9TjedNiFHh9KkDWdO1","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Floor this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BfpKzfD_ye7lKDHC2VSWv","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the length (magnitude) of this vector

                          ","params":[],"returns":[{"description":"

                          the length of this vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ByS-ZyIOX8T8TbPK5D54m","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the square length of this vector

                          ","params":[],"returns":[{"description":"

                          The length^2 of this vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QQ6CzsRF4XXHFXfZSFNeV","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Linearly interpolate between this vector and the given one.

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"alpha","optional":false,"description":"

                          distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"677hVS5obOjdiTW-oCcYv","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector with the maximum value between this and the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HUyhQKlKENwDGHht4X5wu","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Update this vector with the minimum value between this and the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mZASDROn2ZIbsB4Eek2TU","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

                          interpolate the position of this vector on the x and y axis towards the given one while ensure that the distance never exc...","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d | Vector3d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}},{"identifier":"step","optional":false,"description":"

                          the maximum step per iteration (Negative values will push the vector away from the target)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qUjCkTIIeTZewv9pT54xN","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Negate the vector values

                          ","params":[],"returns":[{"description":"

                          new me.ObservableVector3d

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QBFJJN3l5AkUO4-KAHrwH","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Negate this vector values

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pV3wIXpUnM-q4fbvOvUuI","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          normalize this vector (scale the vector so that its magnitude is 1)

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V1zWVrI17PsI0HH8sb1rC","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          change this vector to be perpendicular to what it was before.
                          \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"THuGcQO-aS1oUrtsiRu_m","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

                          project this vector on to another vector.

                          ","params":[{"identifier":"v","optional":false,"description":"

                          The vector to project onto.

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xcpu4hyVm1NrJpaODacup","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Project this vector onto a vector of unit length.
                          \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

                          The unit vector to project onto.

                          ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0LoZbQGcwzgn-xUXykiWW","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this vector (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around (on the same z axis)

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m9-RdrSqT8D4IHKATkMUa","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Multiply this vector values by the given scalar

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B5UkSTnWy9lhRzOdNIZzl","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Multiply this vector values by the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WHeJs3pHYISE6ybwrPcHn","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties to the given values

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9QBZIcblpWTRiw1-vVXZE","name":"setCallback","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the callback to be executed when the vector is changed

                          ","params":[{"identifier":"fn","optional":false,"description":"

                          callback

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"scope","optional":true,"default":"null","description":"

                          scope

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"szhz3gjcsO3kSj1WQm8B2","name":"setMuted","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vector value without triggering the callback

                          ","params":[{"identifier":"x","optional":false,"description":"

                          x value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          y value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

                          z value of the vector

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2-jHC1JTxPgZMMdccqPfn","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties using the passed vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"D5c-F7SCV0aF30WWdRu8A","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Vector x and y properties to 0

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Oa4vnq_fnZsaQEXNB0cqd","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Substract the passed vector to this vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d | ObservableVector2d | ObservableVector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"ObservableVector3d","kind":"canonical"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zJvMLrXvbfK4I8-rmTann","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Convert this vector into 2d coordinate space

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M90su33PtgVi6C5sBHgmx","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Convert this vector into isometric coordinate space

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Sw7HOpPHw_MVEdtkukEX6","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                          convert the object to a string representation

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"5ZZ9xV7BrX5YI7At8V72W","name":"toVector3d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a me.Vector3d copy of this me.ObservableVector3d object

                          ","params":[],"returns":[{"description":"

                          new me.Vector3d

                          ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"Z1k1rsOJdtyOXuvW1xvgL","name":"Particle","brief":"","type":"ClassDoc","description":"

                          Single Particle Object.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"-Cxgd6jJtw5Hki7B9r5lF","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"U8iKU8UxjAiuN7muX1w9q","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mHLuCsPJIcyCm82Dp3Yr2","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HQSgIUOzCZQ9jr0aqBMHu","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u4itHl0Qck7LwhVhHDpQ1","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8q4Gk_cktcqswbVka8UmU","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-MYh0w6FnXxHzooVaYsnL","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b4ztVNe3UDhrv-NznC7vR","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6I_XsG_xO_f9-9xdQxFjJ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8p9AP4zRq-nky5GCe6a0E","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Co9YUFcT7hSFf-8SRsAFW","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eY8q5RG8RtUsYPNdQyJ67","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m3bp7K095gPKWWcvqP64F","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"--yOSWxd1gkIfdCHeFgHg","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7i8zZG-CH0qp4bxs4grgX","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Eh54ILGJKOpcUMF7TF3Y_","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WMXO239DQbSAGbz0ePoFU","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FS13eBaHFiaGiTeZ3hZ1T","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jykZjbUaFX8q_KpaIhbId","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d5yQFugpCGsTvI3DMvWEG","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gfh_0Yi50U8jiLZQSpbW-","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VX0TPOYRF5tR-twT7yL8J","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q3FhOK5CvuW2cymeFJAu4","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QNaBXxzKIFKIaTzUnydft","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3z1jM9rgZubCxLFSGSmUv","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M5C9dIbZFsKulpu82UOG1","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PGpzWuMLAKOJvAcbAYbmN","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"y81cPHxURdFq64kmEojVe","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SiTzF0Mn9_9VGFcU9b_kU","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vHSpyAqr_XcfUx1-KBnwV","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pP7Ug7Y_qspfllcf_9NhE","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rW1Ve1OyZD17ARSxrHPk4","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TgGAXjf0yRy76x8FWwG95","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TrcUp_8uDeRB1tQ2LC7Qh","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wdVpDUiah-f5T2aQb1Gel","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9O5uOYfu2fUK2Z7Cn7VoH","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4tJiAIH2wdxrYL3on3r1E","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mWPgC_eNhqYpvFOgmy8Hb","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8op9Xs6UxnrpiVfdV-QpW","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"emitter","optional":false,"description":"

                          the particle emitter

                          ","dataType":{"tokens":[{"value":"ParticleEmitter","kind":"canonical"},{"value":"ParticleEmitter","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_CEUHo2EW7PBI7uvAzb-S","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"xENIOX6ophg4kF8YS79WC","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"46iM5OZZCItYxaVWH8peO","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4F4uMGO4XQXMdUKHP_M7L","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HZZIC_rPeC_X650y9pMY5","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"j1loYOfiGtnN3fuVNhfyK","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"z1UDgymUi9dTSEGgpIn6I","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_WajjTXBhDw7QTCpm18tT","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gu6KiMOpu2n8uFjouJXZ_","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Uk1i_S2xUCtehQfoiCePK","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"W05esiIwZpjoxSkWb3HGO","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qlHGeHkL-zq2FpcDmfdMP","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"DKs-gkLX3ddlETkMv-ugy","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"t-oxnij_cESq9MVZymnq9","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HCRwzlz21ayaTEtxghlEC","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"bRSG-lgdfuehWzQxvTJ2W","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-KSpnyPVg3OHfpxHaqzrY","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"eBCplg5-QDmtMTfVn5qPf","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"zsDnXZtaOPhoof0PXo_u8","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ec32fX0m5ltQ81R4CWTKL","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QB9JXC_3Q7ds9xkRtwXUq","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9gkf0UzxuJqQkDQEDqAFt","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TbfRG9faS77lQ6-w_IMcX","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cIgLUQfOPHNC9Qpci6Pyp","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sEMGoOmsYnSru_4j1dG8d","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"u7Z6K1m8ULxn4-YUF1rd0","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NPFpmgju0H5Nrec6cFRY2","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"i_y3HACGsSxXO2gj7pSj1","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"GXEhEYIGHY8GkpW0FX1XT","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"In2pAWxrdcUcvLwWZyuvl","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o8XEN9I_rRA3IdHCgVzhV","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iZxrc9JGT0spSVdosxN_L","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MF2sUdZXL8ROq_q9-4ubN","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x_REpDKg7UH7572iKMTBN","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bL7QLAig-018cLCw-iNnN","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hTKalY_cEAUyTFphHPilx","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BpxXM9xwCTGq03Tji09gk","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"0pWnvXnrPE0OVG8jGVqCo","name":"ParticleEmitter","brief":"","type":"ClassDoc","description":"

                          Particle Emitter Object.

                          ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"FRDuAx5kgrgCvOx8syIZ2","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6UqFopWMT-v19Io2VWkR2","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wbcbGssxfUJZgHxCCq_Xe","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BPtYXaTdOChq95Txtqj-2","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dl6j40hyMPnHvNmGoIaIl","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the children z index should automatically be managed by the parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZXOJf8_DhJih5qmlTadb8","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the children list should be automatically sorted when adding a new child

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"49U6RJ06c8DE4gVUa2x2B","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hI8LZHMKuP0QDkyBBzx2j","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a background color for this container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rI6TqrStTxt-70-kHQaFm","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OBms-s1xyO-I9kj5LYqTB","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VJc-diCIL118FT89FsHuk","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jNCsogODbtdaKd6mnxc-2","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lXZT1BLDvXksRg58_mm4O","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ULgmPHxMC4YPsrYLfSXUX","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the container draw operation should clip his children to its own bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ebwqw1T6RC6gXPU2Kn1QS","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z-Jsyqk4UV6y-7TXyEtMM","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xhJSEdkGUYWPUDa7XF10l","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-_aHtrMEElpLRzJy_Is--","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qNOwR9iJZype3J0zWiZK-","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aiJv3WyIfAZ9JkVjlLCxv","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"17b4lYKj7rf3cCYKlPhPo","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BsOtnzATSaergsbdFzFzA","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FbqCfcDksO_itteEZDTUN","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lkA8oVtkEar4aaGKxzbu0","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JybRnhSqiJ2ckmLf_AzmA","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gygK27m-lZdW9SMdCQSJP","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lFYhWMg-EhIKPOY4n-f0K","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g7h3BCmZFwqIAAJlbMxYL","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NxmFAnSrZQ4Lfb00g4Ti0","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T69GFcdVYhTK7EmKUB7dK","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lXciJIj6ulWnwfkedQ46-","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UpdsoSQQKzsc-HHu2FLHO","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fEFSM5X_zKFe0rBaoDmDV","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aTLKOltxfv0xknu9gUSGp","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fZ35es9vrp0ZdabCnOfhx","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          whether the container is the root of the scene

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WvG7-K9x2e0XrKnbUOo-2","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the current (active) emitter settings

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pRcTjxb_t-WfOigWhweF0","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fRhgFVyBEH4elB1lX43ay","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                          The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DffxrKH9iddmr1IeBJEGg","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"avO4d16KlpDCSrVhgdDpy","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9dUpIduxTkfhjno07pvog","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rooCjS-VojZ4-MYWqcFd2","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"g5ANuMtPcN2WZQXAkobRh","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M4BeZcyVbTp2lqvK7p4iw","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add a child to the container
                          \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                          forces the z index of the child to the specified value

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the added child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rJ7C1EY3PN7rxl0LXcPQe","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add a child to the container at the specified index
                          \n(the list won't be sorted after insertion)

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                          The index at which to insert the child

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the added child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fnvWaB9Brt0espUZNv9pJ","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K8Fa7nUb6_lILWjracvuE","name":"burstParticles","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Launch all particles from emitter and stop (e.g. for explosion)

                          ","params":[{"identifier":"total","optional":true,"description":"

                          number of particles to launch

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iJl0ba0JfeeLJl3KzK3ki","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fA5sxOYHHonoAnzr0vUYL","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aE_oB68yqQQrWmoHRYyIc","name":"constructor","brief":"","examples":[{"caption":"","code":" // Create a particle emitter at position 100, 100\n let emitter = new ParticleEmitter(100, 100, {\n width: 16,\n height : 16,\n tint: \"#f00\",\n totalParticles: 32,\n angle: 0,\n angleVariation: 6.283185307179586,\n maxLife: 5,\n speed: 3\n });\n\n // Add the emitter to the game world\n me.game.world.addChild(emitter);\n\n // Launch all particles one time and stop, like a explosion\n emitter.burstParticles();\n\n // Launch constantly the particles, like a fountain\n emitter.streamParticles();\n\n // At the end, remove emitter from the game world\n // call this in onDestroyEvent function\n me.game.world.removeChild(emitter);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          x position of the particle emitter

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          y position of the particle emitter

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":true,"default":"ParticleEmitterSettings","description":"

                          the settings for the particle emitter.

                          ","dataType":{"tokens":[{"value":"ParticleEmitterSettings","kind":"canonical"},{"value":"ParticleEmitterSettings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"d9wnA2Q9dqXgMkL3jnsVL","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZCQI-f2sqDGL6_MFtvjt_","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"voYSLKHwP3D6SNBVwSaUt","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xsuKf_y8o4UStZkPfMeii","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"b_Q1Ym6EfO9Nf35aQ34W9","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QEtP7xW1dv8VV8cEbVB0J","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AnCyT6WOF4u6gJ7OF37zM","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                          The forEach() method executes a provided function once per child element.
                          \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                          fnction to execute on each element

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                          value to use as this(i.e reference Object) when executing callback.

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"iI-CuDP6rQinOSKtHNn-6","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"b1eJnUXhYUVizy8M4qp-w","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"t9jyaqXG9Vg9AAPEO8U0b","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the Child at the specified index

                          ","params":[{"identifier":"index","optional":false,"description":"

                          The index of the child

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the child at the specified index

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WcwWl-zlsyF6jp8VUEik_","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the child corresponding to the specified GUID
                          \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                          child GUID

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          corresponding child or null

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"diTM3WWy3I2poekqYU4LL","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the list of childs with the specified name
                          \nas defined in Tiled (Name field of the Object Properties)
                          \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                          child name

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          Array of children

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"UX_c3l7es9KaK1kL903Qr","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                          return the child corresponding to the given property and value.
                          \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                          Property name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                          Value of the property

                          ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                          Array of childs

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"SbMF0EmuqBEZpmqDFqZB_","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the list of childs with the specified class type

                          ","params":[{"identifier":"classType","optional":false,"description":"

                          Class type

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Array of children

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"mdWksC52hgzrnu5UyFcqp","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the index of the given Child

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                          index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tglhhrqYfrenhgSw7vhYv","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return all child in this container

                          ","params":[],"returns":[{"description":"

                          an array of renderable object

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"sO5uN1H0mCToRlnsvUbNX","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"08DfGPmRH7yVNgnnohKna","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the next child within the container or undefined if none

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                          child

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aXL-nydM3SR-br6vx96A1","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3azQ42ZmnBLUb_I98wroI","name":"getRandomPointX","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a random point on the x axis within the bounds of this emitter

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HX4eQwMdxR5fXRBo6R5ks","name":"getRandomPointY","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a random point on the y axis within the bounds this emitter

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EMC9OI-auejwZ4G-AoeFo","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the instance of the root container (i.e. the current application World container).

                          ","params":[],"returns":[{"description":"

                          root container

                          ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bgLTO5AXcOgaCm3GEh4qZ","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if contains the specified Child

                          ","params":[{"identifier":"child","optional":false,"description":"

                          The child object

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"KJY2TRd14hKDov6CymcFW","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Checks if this container is root or if it's attached to the root container.

                          ","params":[],"returns":[{"description":"

                          true if this container is root or if it's attached to the root container

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"CsLrPXKRKDEyX7NzAgtHx","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"6cLrPSzAbOBN0HIx0MqmF","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1And69aIld6_zqU7r6X77","name":"isRunning","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Emitter is of type stream and is launching particles

                          ","params":[],"returns":[{"description":"

                          Emitter is Stream and is launching particles

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"pkrkBMqb3Jeig5QNXgyId","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SF-WtunrT2jnKTk1BzL3L","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the child in the group one step backward (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"HspQO52hYEIkiLaw60pL7","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the specified child the bottom (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"DeLUy9wrw9105Ipc8x8O4","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the specified child to the top(z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"kPpyv2Ra9Y2y7BghPdXpt","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Move the child in the group one step forward (z depth).

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be moved

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"xSNW72WKulfRDlFkkYQ4C","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                          a callback to be extended, triggered after a child has been added or removed

                          ","params":[{"identifier":"index","optional":false,"description":"

                          added or removed child index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DkSqRDM3oTvoTUawL9wZ6","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"jHsC42HzbR78j5NtPVvoW","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qQwAPW9EPUbXTLyCrE3Ve","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QJXjTYpQi--fmvNai84hs","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"hBxEsl3nuBMYd0r7izs87","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"RIOb1FJMLVATjxU-vCXpE","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hGu55GXmKz2GhfIOWdGBV","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be removed

                          ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                          true to prevent calling child.destroy()

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"vNmvMFzLUt1qUwP4leyIq","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Removes (and optionally destroys) a child from the container.
                          \n(removal is immediate and unconditional)
                          \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                          Child to be removed

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                          True to prevent calling child.destroy()

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"Lb_fHWHZHzj1b7VgMATa7","name":"reset","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Reset the emitter with particle emitter settings.

                          ","params":[{"identifier":"settings","optional":false,"description":"

                          [optional] object with emitter settings. See {@link ParticleEmitterSettings}

                          ","dataType":{"tokens":[{"value":"ParticleEmitterSettings","kind":"canonical"},{"value":"ParticleEmitterSettings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"5DDD6cOYRCunK5P4GOYWx","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ivmhWh3nDyzup7LvM9oZ-","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NHjnmzbzNU9hzc9VJL-K2","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gU_98nohnfwtlCLflxhQR","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-MwqxNRmt_KmdifnFg6nh","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Automatically set the specified property of all childs to the given value

                          ","params":[{"identifier":"prop","optional":false,"description":"

                          property name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                          property value

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                          recursively apply the value to child containers if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"GB9fBuy-dIWqP_aAlocCB","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"dRBVXaIRByoe05xMHN47i","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yfHGbmcUtaz7K8TOqnpGZ","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M3A-cjcmAbcrroKuPtSsk","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"USMlAxA224njc6k5qQFcZ","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Manually trigger the sort of all the childs in the container

                          ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                          recursively sort all containers if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"P3wcWkErE2slibygHXvqS","name":"stopStream","brief":"

                          Stop the emitter from generating new particles (used only if emitter is Stream)

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nGn_-Lpxt9D2peuZ-KSqq","name":"streamParticles","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Launch particles from emitter constantly (e.g. for stream)

                          ","params":[{"identifier":"duration","optional":true,"description":"

                          time that the emitter releases particles in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"-bvPdG2pXiFOFUn0mBCpc","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Swaps the position (z-index) of 2 children

                          ","params":[{"identifier":"child","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                          Child to be added

                          ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"GA5PL0P9MklnmJbyYtFwL","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8_IbsUuejoT-OUu0xj5dk","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Xib_KHQ8Vsa1pwGgM4asG","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xCibpVR5BLT4n8_NyttyK","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PVnNlh8K7sFdhz5-x4Ry-","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nWHslSA95mRso81S3rQWT","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YLi65WTfH1Y-_P-WmFEmd","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this container.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this container bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XJujI6ToKnzex9VX4SdeJ","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this renderable (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"srdeDWEXJQo4Jsb-eOBVB","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          container update function.
                          \nautomatically called by the application update loop {@link Application}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Container is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JV-n7Og1GOw4EuM2KZx0b","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"qf6zsuWVcrx88Meeb7CS2","name":"Path2D","brief":"","type":"ClassDoc","description":"

                          a simplified path2d implementation, supporting only one path

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"pc6wW2Dcd1UHjb19qPTZb","name":"arcResolution","brief":"","defaultValue":"5","scope":"instance","type":"PropertyDoc","description":"

                          space between interpolated points for quadratic and bezier curve approx. in pixels.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FzGN4K5_C-gncXuFXvj4k","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the points defining the current path

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"87X86bcHIWDrqFX8p8cAF","name":"arc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds an arc to the current path which is centered at (x, y) position with the given radius,\nstarting at startAngle and end...","params":[{"identifier":"x","optional":false,"description":"

                          the horizontal coordinate of the arc's center.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the vertical coordinate of the arc's center.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                          the arc's radius. Must be positive.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startAngle","optional":false,"description":"

                          the angle at which the arc starts in radians, measured from the positive x-axis.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endAngle","optional":false,"description":"

                          the angle at which the arc ends in radians, measured from the positive x-axis.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"anticlockwise","optional":true,"default":"false","description":"

                          an optional boolean value. If true, draws the arc counter-clockwise between the start and end angles.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"kYPeAeb9ysqmS9mrVOgKy","name":"arcTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds a circular arc to the path with the given control points and radius, connected to the previous point by a straight li...","params":[{"identifier":"x1","optional":false,"description":"

                          the x-axis coordinate of the first control point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

                          the y-axis coordinate of the first control point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x2","optional":false,"description":"

                          the x-axis coordinate of the second control point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y2","optional":false,"description":"

                          the y-axis coordinate of the second control point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                          the arc's radius. Must be positive.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LLDEp_FmDaXsNYOXwK_W6","name":"beginPath","brief":"

                          begin a new path

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IXzqsXSkTyHGV6xGLaVK7","name":"closePath","brief":"","scope":"instance","type":"MethodDoc","description":"

                          causes the point of the pen to move back to the start of the current path.\nIt tries to draw a straight line from the curre...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XQNKXhDKHQIxuxjHUh0fD","name":"ellipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds an elliptical arc to the path which is centered at (x, y) position with the radii radiusX and radiusY\nstarting at sta...","params":[{"identifier":"x","optional":false,"description":"

                          the x-axis (horizontal) coordinate of the ellipse's center.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y-axis (vertical) coordinate of the ellipse's center.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusX","optional":false,"description":"

                          the ellipse's major-axis radius. Must be non-negative.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radiusY","optional":false,"description":"

                          the ellipse's minor-axis radius. Must be non-negative.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"rotation","optional":false,"description":"

                          the rotation of the ellipse, expressed in radians.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startAngle","optional":false,"description":"

                          the angle at which the ellipse starts, measured clockwise from the positive x-axis and expressed in radians.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endAngle","optional":false,"description":"

                          the angle at which the ellipse ends, measured clockwise from the positive x-axis and expressed in radians.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"anticlockwise","optional":true,"default":"false","description":"

                          an optional boolean value which, if true, draws the ellipse counterclockwise (anticlockwise).

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"MTDM_R0YdC_lCN6P74yu9","name":"lineTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          connects the last point in the current path to the (x, y) coordinates with a straight line.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x-axis coordinate of the line's end point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y-axis coordinate of the line's end point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ap68SpZRqo3uyLV4YAcCY","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          moves the starting point of the current path to the (x, y) coordinates.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x-axis (horizontal) coordinate of the point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y-axis (vertical) coordinate of the point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZCLFcXvF_nqvzdKuljKEa","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

                          creates a path for a rectangle at position (x, y) with a size that is determined by width and height.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x-axis coordinate of the rectangle's starting point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y-axis coordinate of the rectangle's starting point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          the rectangle's width. Positive values are to the right, and negative to the left.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          the rectangle's height. Positive values are down, and negative are up.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"BXFs8tfCWE1Gl4p_qIGe4","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                          adds an rounded rectangle to the current path.

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x-axis coordinate of the rectangle's starting point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y-axis coordinate of the rectangle's starting point.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          the rectangle's width. Positive values are to the right, and negative to the left.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          the rectangle's height. Positive values are down, and negative are up.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                          the arc's radius to draw the borders. Must be positive.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"y_0eLazOx5WaR7dUmifmF","name":"triangulatePath","brief":"","scope":"instance","type":"MethodDoc","description":"

                          triangulate the shape defined by this path into an array of triangles

                          ","params":[],"returns":[{"description":"

                          an array of vertices representing the triangulated path or shape

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]}]},{"id":"7btJXjjclbWoBjW45rvOe","name":"Point","brief":"","type":"ClassDoc","description":"

                          represents a point in a 2d space

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"jp-ykyKN4rCSQ0X7_OlSn","name":"type","brief":"","defaultValue":"\"Point\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0WUsN9qVrovm1tTzqw1pD","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          the position of the point on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OIwjlzUG8a7DYlVa-CX02","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          the position of the point on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o6v4ez9gcLv6bSzGeyliQ","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this Point

                          ","params":[],"returns":[{"description":"

                          new Point

                          ","dataType":{"tokens":[{"value":"Point","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GKHtfSVtKAEecoIkusHnU","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if this point is equal to the given point

                          ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Point | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Point","kind":"link"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MMF_yW8npU-PegerpaC4W","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the Point x and y properties to the given values

                          ","params":[{"identifier":"x","optional":false,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Point","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"kkbS-D_l8mG33vPo64n8x","name":"Pointer","brief":"","type":"ClassDoc","description":"

                          a pointer object, representing a single finger on a touch enabled device.

                          ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"GrmkMa1Lg9ZbAOXhPFpXl","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pie-4pPbEBNX9u9A2_yN2","name":"button","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button"],"type":"PropertyDoc","description":"

                          the button property indicates which button was pressed on the mouse to trigger the event.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Diu57kXdfmDqoKY00pr5D","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the center position of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-UAlhurrZAOKTN01Arfni","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          center position of the bound on the x axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J5SCAty4qWr6FlEa5g6nB","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          center position of the bound on the y axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jq8POD10hDD2eRP6bHclI","name":"clientX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientX"],"type":"PropertyDoc","description":"

                          the horizontal coordinate within the application's client area at which the event occurred

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0DIKbvVDywFjsIeQPs0nD","name":"clientY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/clientY"],"type":"PropertyDoc","description":"

                          the vertical coordinate within the application's client area at which the event occurred

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"px95cs3TDmB0gGpoR2Ro6","name":"deltaMode","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaMode"],"type":"PropertyDoc","description":"

                          an unsigned long representing the unit of the delta values scroll amount

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bEPm-2DJAdH62oucDd1DQ","name":"deltaX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaX"],"type":"PropertyDoc","description":"

                          a double representing the horizontal scroll amount in the Wheel Event deltaMode unit.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NV_MsyI6FqD2CVGORaK4Y","name":"deltaY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaY"],"type":"PropertyDoc","description":"

                          a double representing the vertical scroll amount in the Wheel Event deltaMode unit.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z2hsbaYcXIEpChFuEfCK7","name":"deltaZ","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent/deltaZ"],"type":"PropertyDoc","description":"

                          a double representing the scroll amount in the z-axis, in the Wheel Event deltaMode unit.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kH1jwVd1PR0meZKUUUN-x","name":"event","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent","https://developer.mozilla.org/en-US/docs/Web/API/TouchEvent","https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent"],"type":"PropertyDoc","description":"

                          the originating Event Object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6rpu2K_nEQOl7aP41KqBA","name":"gameLocalX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event X coordinate relative to the holding container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZZQb2da7X-oQN19EoYMYl","name":"gameLocalY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event Y coordinate relative to the holding container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LnstG7l4BVqT1rOHNuMaq","name":"gameScreenX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event X coordinate relative to the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ethiiyxcmPZiEknPNGm95","name":"gameScreenY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event Y coordinate relative to the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1yLFYBHXpUFm3DT3sYuzd","name":"gameWorldX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event X coordinate relative to the map

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dJYE99WVD-AtjvwAi3tCT","name":"gameWorldY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event Y coordinate relative to the map

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Xo82qx1hZutmKa26lf7Gh","name":"gameX","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event normalized X coordinate within the game canvas itself
                          \n

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"--Glp_7w6kLKVLAKDZvru","name":"gameY","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          Event normalized Y coordinate within the game canvas itself
                          \n

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RKfyBPshR0-sA2CE9kd0z","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vJNk2WMuWwjRUN32scMSH","name":"isNormalized","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if not originally a pointer event

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jrbBvwC3Ub5xbTCaWGXUD","name":"isPrimary","brief":"","access":"public","defaultValue":"false","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/isPrimary"],"type":"PropertyDoc","description":"

                          indicates whether or not the pointer device that created the event is the primary pointer.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cnogwYx3GcuLGypvBmkLZ","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LDyZUlOGb9W_pWLsTfHlX","name":"LEFT","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          constant for left button

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jUhRkiTUPXn5Y_rMTALWy","name":"locked","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          true if the pointer is currently locked

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f2vjn3GeZTFDD7SMTytKJ","name":"MIDDLE","brief":"","access":"public","defaultValue":"1","scope":"instance","type":"PropertyDoc","description":"

                          constant for middle button

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w_RwZVKIQjoDuiqQtinhj","name":"movementX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementX"],"type":"PropertyDoc","description":"

                          the difference in the X coordinate of the pointer since the previous move event

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3WIR9K1SAvakDR0eC8MMh","name":"movementY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementY"],"type":"PropertyDoc","description":"

                          the difference in the Y coordinate of the pointer since the previous move event

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pcsedvtp0gtpg6B-OW5rh","name":"pageX","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageX"],"type":"PropertyDoc","description":"

                          the horizontal coordinate at which the event occurred, relative to the left edge of the entire document.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ryrmxjPmlGDUTQZQq6FKU","name":"pageY","brief":"","access":"public","defaultValue":"0","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/pageY"],"type":"PropertyDoc","description":"

                          the vertical coordinate at which the event occurred, relative to the left edge of the entire document.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ohQHxFetQx0RTcA5LoozZ","name":"pointerId","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/PointerEvent/pointerId"],"type":"PropertyDoc","description":"

                          The unique identifier of the contact for a touch, mouse or pen

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JTMT0uayNWyIoH5_9d_hT","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aqILPeBq_PdebbRNJh3xZ","name":"RIGHT","brief":"","access":"public","defaultValue":"2","scope":"instance","type":"PropertyDoc","description":"

                          constant for right button

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VUT3fnpSEx9H0DLPSb_4-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kJiOciZxC3r2X7s0FN-8b","name":"type","brief":"","access":"public","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/Event/type"],"type":"PropertyDoc","description":"

                          a string containing the event's type.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p4-exjlpvxRICaNVR7Fsw","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G9zAdjMq_83UekvmKr-5j","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          x position of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"a4Ftkxf3OIZD7iVD9EYfB","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          y position of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tA08Y4V7gncLUnjMi9fFN","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given vertices to the bounds definition.

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          an array of Vector2d or Point

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

                          either to reset the bounds before adding the new vertices

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"5AUOvAhciOGg08YyKGotk","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given bounds to the bounds definition.

                          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

                          either to reset the bounds before adding the new vertices

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"NQXLNsYZ6beH9Bh-e1eIL","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given quad coordinates to this bound definition, multiplied by the given matrix

                          ","params":[{"identifier":"x0","optional":false,"description":"

                          left X coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

                          top Y coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

                          right X coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

                          bottom y coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

                          an optional transform to apply to the given frame coordinates

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZpZYHPeg7Hd_AYwANXFzJ","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given point to the bounds definition.

                          ","params":[{"identifier":"point","optional":false,"description":"

                          the vector or point to be added to the bounds

                          ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

                          an optional transform to apply to the given point (if the given point is a Vector2d)

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"w-QDPtnuJ_anM8aUax0qw","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the bounds position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this bounds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this bounds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bAvITRgyp7uKrcUrVtTpH","name":"clear","brief":"

                          reset the bound

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yatA2yGHJcjs8GikobNpI","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this bounds

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CJyc_VbpAOc21KZow2ACu","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the bounds contains the given point.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to check

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the bounds contain the point, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"JdekbxbGrVnTP5rGwZ8Dj","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this bounds are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"RFr7Rs11hLZV6UUCXiUVq","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the two bounds intersect.

                          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          True if the bounds overlap, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"VbrsqAAo3qADlIBWvgkub","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

                          sets the bounds to the given min and max value

                          ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WVmAGRiEPJw822HMJTCPk","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the bounds to the given x, y position.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VQ1OR5BEoVTayjuXUntZ3","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this bounds.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this bounds.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JtgQUKy_rzIJ-oh7NYnQV","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Translates the bounds by the given point

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aJmpqi-sOp0GqyZpeI4qo","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Updates bounds using the given vertices

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          an array of Vector2d or Point

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"y3aqpg6xX0K1DXAlP5qr4","name":"set","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          initialize the Pointer object using the given Event Object

                          ","params":[{"identifier":"event","optional":false,"description":"

                          the original Event object

                          ","dataType":{"tokens":[{"value":"Event","kind":"canonical"},{"value":"Event","kind":"canonical"}],"template":"%1"}},{"identifier":"pageX","optional":true,"default":"0","description":"

                          the horizontal coordinate at which the event occurred, relative to the left edge of the entire document

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pageY","optional":true,"default":"0","description":"

                          the vertical coordinate at which the event occurred, relative to the left edge of the entire document

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clientX","optional":true,"default":"0","description":"

                          the horizontal coordinate within the application's client area at which the event occurred

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"clientY","optional":true,"default":"0","description":"

                          the vertical coordinate within the application's client area at which the event occurred

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pointerId","optional":true,"default":"1","description":"

                          the Pointer, Touch or Mouse event Id (1)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"qDcrKne5xTg0-eg6WKv82","name":"Polygon","brief":"","type":"ClassDoc","description":"

                          a polygon Object.
                          \nPlease do note that melonJS implements a simple Axis-Aligned Boxes collision algorithm, which requir...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"U6pN_FyNptXspxFOrv8kK","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nVB36VtgHDa7QGoa3fOt_","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jUKloLjcIhu-YKb1OylDq","name":"type","brief":"","defaultValue":"\"Polygon\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5IGMdyvX13B5kI-uLJtzY","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this Polygon

                          ","params":[],"returns":[{"description":"

                          new Polygon

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bAo0-pghWHRDJH333bjCP","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                          origin point of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                          origin point of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

                          array of vector defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[],"extends":[],"implements":[]},{"id":"6ZgFLu1svpBv0BmqGe7QY","name":"contains","brief":"","examples":[{"caption":"","code":"if (polygon.contains(10, 10)) {\n // do something\n}\n// or\nif (polygon.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the polygon contains the given point.
                          \n(Note: it is highly recommended to first do a hit test on the c...","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to check

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the polygon contain the point, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"MDkmv02UPSlaIxkjq_7Yb","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S3wlGs8hnZ2bTfxyqlVOH","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"bNEnsn5ScO38i_jyvXvKz","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XboemduxSfAiCUogQ3C0P","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PWwnLXpjsMaz81jt-M6_o","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9AqsjCYpHeL32A0qawMbV","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given scalar.

                          ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2Ca2HYZxyDkSSwUdFfiX2","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y5cNjLpG1lELidIu9LWr8","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the Polygon

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Polygon

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"points","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2> | %3<%4>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6_Qb-ToCYfoek5UmkJko9","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nA1o5QutG84vpp1ff6HGO","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Mj3-J8h7in3cIps7OwRn8","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KM0oaoZ5qu0X__2rIL6ya","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9wQX1KB4GeArzuVUlulrL","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the given transformation matrix to this Polygon

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"5DSE0T1dRX0yxkF0CEL6d","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cxig72kYhg2VgDdwTmo1o","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"skyWPwrbo74iWPQxz6bZN","name":"PrimitiveCompositor","type":"ClassDoc","description":"

                          A WebGL Compositor object. This class handles all of the WebGL state
                          \nPushes texture regions or shape geometry into Web...","params":[],"returns":[],"extends":["Compositor"],"implements":[],"members":[{"id":"XjT2DfRLmqHBi8l2LS-t-","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f5pwnMYofHr3Rbb7NKyF1","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the shader currently used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dRoj67NoI7w2X3Fbxxwm6","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-V-8NTZfzY2MGmy3NDiNf","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

                          primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sPlIonPdrsfCqS10TRCdR","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"43tsPHCJq1TF6HjyTqRc1","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cFMQ-L-rEJ9cgXIkAhhE6","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eN_owVNz-zBKYD4WD-wcI","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add vertex attribute property definition to the compositor

                          ","params":[{"identifier":"name","optional":false,"description":"

                          name of the attribute in the vertex shader

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

                          number of components per vertex attribute. Must be 1, 2, 3, or 4.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

                          data type of each component in the array

                          ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

                          whether integer data values should be normalized into a certain range when being cast to a float

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

                          offset in bytes of the first component in the vertex attribute array

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"727kYpwqqI66sSc-D863f","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zSVTOlQvvw8x1DAA9cckY","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"QHwwqaxug4ELQb3Eu5Sp4","name":"drawVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Draw an array of vertices

                          ","params":[{"identifier":"mode","optional":false,"description":"

                          primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"verts","optional":false,"description":"

                          an array of vertices

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2>"}},{"identifier":"vertexCount","optional":true,"default":"verts.length","description":"

                          amount of points defined in the points array

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4AhS1LyyK4p2sT6QYQADW","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Flush batched vertex data to the GPU

                          ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

                          the GL drawing mode

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WTmnTXSGWfT37LAI0Xpbg","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set/change the current projection matrix

                          ","params":[{"identifier":"matrix","optional":false,"description":"

                          the new projection matrix

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"K5ruO5i3xgjr-ZjUNyZOX","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

                          Select the shader to use for compositing

                          ","params":[{"identifier":"shader","optional":false,"description":"

                          a reference to a GLShader instance

                          ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"1eIXUeMxmte8oz0t3nYlT","name":"QuadCompositor","type":"ClassDoc","description":"

                          A WebGL Compositor object. This class handles all of the WebGL state
                          \nPushes texture regions or shape geometry into Web...","params":[],"returns":[],"extends":["Compositor"],"implements":[],"members":[{"id":"fCyjLQ8pTQjChxjnbgK-7","name":"attributes","brief":"","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          an array of vertex attribute properties

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OjP5NfvIQKJ2r_XUotqFh","name":"currentShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the shader currently used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yM9UYokz2YrgtzYTEenAL","name":"defaultShader","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the default shader created by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tHwQx2QseztzgIkQd9nz3","name":"mode","brief":"","defaultValue":"gl.TRIANGLES","scope":"instance","type":"PropertyDoc","description":"

                          primitive type to render (gl.POINTS, gl.LINE_STRIP, gl.LINE_LOOP, gl.LINES, gl.TRIANGLE_STRIP, gl.TRIANGLE_FAN, gl.TRIANGL...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IN66q3RIJi9L493piYuCd","name":"vertexByteSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in bytes\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DeO8Y9qLBQS7RM6iipqmU","name":"vertexData","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          the vertex data buffer used by this compositor

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ASLAqCAA-GfeB2vYxkJed","name":"vertexSize","brief":"","defaultValue":"0","scope":"instance","see":["WebGLCompositor.addAttribute"],"type":"PropertyDoc","description":"

                          the size of a single vertex in floats\n(will automatically be calculated as attributes definitions are added)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8weycSFwPsWA_Es-9xuZL","name":"addAttribute","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add vertex attribute property definition to the compositor

                          ","params":[{"identifier":"name","optional":false,"description":"

                          name of the attribute in the vertex shader

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":false,"description":"

                          number of components per vertex attribute. Must be 1, 2, 3, or 4.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"type","optional":false,"description":"

                          data type of each component in the array

                          ","dataType":{"tokens":[{"value":"GLenum","kind":"canonical"},{"value":"GLenum","kind":"canonical"}],"template":"%1"}},{"identifier":"normalized","optional":false,"description":"

                          whether integer data values should be normalized into a certain range when being cast to a float

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"offset","optional":false,"description":"

                          offset in bytes of the first component in the vertex attribute array

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"trEz7Vvp_QQtUuKC_kez2","name":"addQuad","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Add a textured quad

                          ","params":[{"identifier":"texture","optional":false,"description":"

                          Source texture atlas

                          ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                          Destination x-coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          Destination y-coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          Destination width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          Destination height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"u0","optional":false,"description":"

                          Texture UV (u0) value.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v0","optional":false,"description":"

                          Texture UV (v0) value.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"u1","optional":false,"description":"

                          Texture UV (u1) value.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v1","optional":false,"description":"

                          Texture UV (v1) value.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tint","optional":false,"description":"

                          tint color to be applied to the texture in UINT32 (argb) format

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zQl9CkzAtmYDWmAVNgkPa","name":"bind","brief":"

                          called by the WebGL renderer when a compositor become the current one

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DiWfYuUBZdlXpZfl2rSy_","name":"bindTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

                          assign the given WebGL texture to the current batch

                          ","params":[{"identifier":"texture","optional":false,"description":"

                          a WebGL texture

                          ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}},{"identifier":"unit","optional":false,"description":"

                          Texture unit to which the given texture is bound

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"unNSG-4LXFR7Xp9UZyjmh","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"BF20_K8JzHXH90t49K9qr","name":"createTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Create a WebGL texture from an image

                          ","params":[{"identifier":"unit","optional":false,"description":"

                          Destination texture unit

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pixels","optional":true,"default":"null","description":"

                          Source image

                          ","dataType":{"tokens":[{"value":"Image | HTMLCanvasElement | ImageData | Array | Array","kind":"canonical"},{"value":"Image","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageData","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Uint8Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1 | %2 | %3 | %4<%5> | %6<%7>"}},{"identifier":"filter","optional":false,"description":"

                          gl.LINEAR or gl.NEAREST

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"repeat","optional":true,"default":"\"no-repeat\"","description":"

                          Image repeat behavior (see {@link ImageLayer#repeat})

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"w","optional":true,"default":"pixels.width","description":"

                          Source image width (Only use with UInt8Array[] or Float32Array[] source image)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":true,"default":"pixels.height","description":"

                          Source image height (Only use with UInt8Array[] or Float32Array[] source image)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"premultipliedAlpha","optional":true,"default":"true","description":"

                          Multiplies the alpha channel into the other color channels

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"mipmap","optional":true,"default":"true","description":"

                          Whether mipmap levels should be generated for this texture

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          a WebGL texture

                          ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fP7YIcmd4HGakcUAvp8nc","name":"deleteTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

                          delete the given WebGL texture

                          ","params":[{"identifier":"texture","optional":true,"description":"

                          a WebGL texture to delete

                          ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"XkawKMDYmU9BfGdynWN7H","name":"flush","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Flush batched vertex data to the GPU

                          ","params":[{"identifier":"mode","optional":true,"default":"gl.TRIANGLES","description":"

                          the GL drawing mode

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ngy7hrCN6yQEsRRIOLZCF","name":"getTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the WebGL texture associated to the given texture unit

                          ","params":[{"identifier":"unit","optional":false,"description":"

                          Texture unit to which a texture is bound

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          texture a WebGL texture

                          ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FAYkec9Kap8mCk5ooLSy5","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set/change the current projection matrix

                          ","params":[{"identifier":"matrix","optional":false,"description":"

                          the new projection matrix

                          ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Z5YzRiLAIS7528vPD1gyP","name":"unbindTexture2D","brief":"","scope":"instance","type":"MethodDoc","description":"

                          unbind the given WebGL texture, forcing it to be reuploaded

                          ","params":[{"identifier":"texture","optional":true,"description":"

                          a WebGL texture

                          ","dataType":{"tokens":[{"value":"WebGLTexture","kind":"canonical"},{"value":"WebGLTexture","kind":"canonical"}],"template":"%1"}},{"identifier":"unit","optional":true,"description":"

                          a WebGL texture

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          unit the unit number that was associated with the given texture

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DNnbkv4qw7pcsDv2UujQg","name":"useShader","brief":"","scope":"instance","see":["GLShader"],"type":"MethodDoc","description":"

                          Select the shader to use for compositing

                          ","params":[{"identifier":"shader","optional":false,"description":"

                          a reference to a GLShader instance

                          ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"gs8HqqsoXMoQZ_EKJLdAA","name":"QuadTree","brief":"","see":["game.world.broadphase"],"type":"ClassDoc","description":"

                          a QuadTree implementation in JavaScript, a 2d spatial subdivision algorithm.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Jxy86SxTFiw3zj8hY19Ou","name":"clear","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clear the quadtree

                          ","params":[{"identifier":"bounds","optional":true,"default":"this.bounds","description":"

                          the bounds to be cleared

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"QGRpLbd-c6d306yEVWURj","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"world","optional":false,"description":"

                          the physic world this QuadTree belongs to

                          ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}},{"identifier":"bounds","optional":false,"description":"

                          bounds of the node

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"max_objects","optional":true,"default":"4","description":"

                          max objects a node can hold before splitting into 4 subnodes

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"max_levels","optional":true,"default":"4","description":"

                          total max levels inside root Quadtree

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"level","optional":true,"default":"0","description":"

                          deepth level, required for subnodes

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"SQJYPKNAs3a7iYra2tWSs","name":"hasChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the node has any children

                          ","params":[],"returns":[{"description":"

                          true if the node has any children

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"H--jNtzlSsuPA69RREpzt","name":"insert","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Insert the given object into the node. If the node\nexceeds the capacity, it will split and add all\nobjects to their corres...","params":[{"identifier":"item","optional":false,"description":"

                          object to be added

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"_o9IOQ8sHKFEFOJnWZfIm","name":"insertContainer","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Insert the given object container into the node.

                          ","params":[{"identifier":"container","optional":false,"description":"

                          group of objects to be added

                          ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rnZ_Y7MpHHWLP0XgXv_pP","name":"isPrunable","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return true if the node is prunable

                          ","params":[],"returns":[{"description":"

                          true if the node is prunable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4g4WgZY0yz89UPFcavj9B","name":"remove","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Remove the given item from the quadtree.\n(this function won't recalculate the impacted node)

                          ","params":[{"identifier":"item","optional":false,"description":"

                          object to be removed

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          true if the item was found and removed.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"v-QUvkbaFHCJWhlTaBwvL","name":"retrieve","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Return all objects that could collide with the given object

                          ","params":[{"identifier":"item","optional":false,"description":"

                          object to be checked against

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"fn","optional":true,"description":"

                          a sorting function for the returned array

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          array with all detected objects

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"DjyOgZoAYUxw3wBufkCzR","name":"Rect","brief":"","type":"ClassDoc","description":"

                          a rectangle Object

                          ","params":[],"returns":[],"extends":["Polygon"],"implements":[],"members":[{"id":"uJMKuPjA5w1kafZtDdYl-","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XyrfF1i1K5TaBxqfYBoJA","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4OEGXg7hdQAX7AD-tK0Q","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3lot2mvi4AADzfOYmor2z","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DmswUBzmnpWjwRDo03vcy","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iU6_P0WYHFhGpfnUOMhpp","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5OZ2MsVXS87yxeerAwIQf","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MfYzHvRRuC19Qe2Ty6_Uz","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4hg1AxmtdQYjq-2t0bhxr","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RvNWHMs6t8OM0PkzLlUiS","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mkjB6yhfKdwZ76iu7k97m","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tuhw7vD_73LdihhhwVdl0","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lXD9p8PKL1WspOtYxum6_","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TJZABtVcnsmUyyWUgG8Uo","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LYpVN50PrsMAmUtPpakgi","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OTxqjNUVChe9J624D7us_","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"piDFP_gONDYTyMaXmcK1f","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_YvHszLacdcywQJ6pvxOG","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6jU-5YejAt9g8vibwGGh_","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"QjnWQKUMIpJilpnLwkcH4","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0nWwoaPB7KUVIW2gEXl-9","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"rbPA_cdi0_ee1lgL6JkQi","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"x8rSNZaiIlzqMB0jMG_5o","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_63aZQr3RrMegNxvqqyQq","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V2aqESx7oaIxYqmNq5eG-","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xASnzRXHhTqJpkjTuQbmj","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the rectangle

                          ","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"T-jGwgWW7ObTfqteyxlBn","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s5-fNb_ZIp8WkKJfvmkpk","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3NxNqYdA6sISXaYnM4o3a","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nh2E_v5SoBdBJ9XS_5KRY","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"K9Mls74RFE4xkQKvnR9dR","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Px9Hbzn3RnVPm6WyCQ2ZQ","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N33bAX5j9jsqOSUDon1Pf","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nTei6mP4U_L1KpauPmbPP","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the given transformation matrix to this Polygon

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"di_5_zlpNtK382JCfZrwQ","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0qXoRkOzP6Hsu-TZpFu5j","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Kmew1rtQf-TM1gd2ldONt","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"r8yOEW68JW84OC5s2mjdL","name":"Renderable","brief":"","type":"ClassDoc","description":"

                          A base class for renderable objects.

                          ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"rnaWR87BfZZuGBDi-3JrZ","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DzFAscYuIDwZipCeBcu5r","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TdVrt3DA59GbKiU8ewAoW","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HLXp5CRxNEPdR4MKqKrvc","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eUhbzZ9E-gaxxgMYAJSjc","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"C_FnEMRnm1t56JimuonmD","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NicJVoP5l-krSiidSounY","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GNP4msSQGVISrkWDq0nlc","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_uXdOqSWJJ5XFG0alzJze","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tz0JXPpRGzBqmIkdslXeI","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NRjNem2zSws2T4O9KwcIM","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sdPM9rTqVqamxiNXmCIv3","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cFzJBwFfFE2Y8GH3vAoiu","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"evRQJXPAnSO9YSsjhXXli","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WpULNxGImK7ZvMiiS1iqo","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5o4C56AaQQJmYZIT5no0h","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d17dfBqo5uaEDymHY2u5I","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4brzpHrw6AOYYQkGB60u9","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wDIX7YiCn4RyN6KWtAHWF","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WX8OmN4NS8O9YXf0bwmtI","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NN3uGddUCeYfKfaFCrAu7","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qulOdUQ5Rt-sOeT1LKqQH","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dHuyXlgSIMRCxlpF63uXz","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9gZr5Velg3VPvxseVswsw","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LiCshKfqqKv6yjqf8DcpL","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0JejQYUlkDvgoki9sAIga","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qNe7zX7B4guR-Hf5ykfXz","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lQ9PDMBXAh4ApaC5nLeR8","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lvUt3YuQtT257_cVr3qTy","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Zrv6pdrL1gnmftgiFmlMi","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pyzkw5be9geZlW5hqOBnA","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Ti05TxO3A316_yvEsgeEe","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MSJ3ddOWnYjjzpb8iL3kY","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1saB9MRmF6lRaGxxKdBIL","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"v-JjVzAemzGdyjA1V0QRf","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NurX9-7vdUjHPH2EQhHrT","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qz1nX45A5qDy9htk7QGSg","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X67YcJ50WReNsx6cynU1v","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g96mhY78vRRSSvlSWtoMC","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          position of the renderable object (accessible through inherited pos.x property)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the renderable object (accessible through inherited pos.y property)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          object width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          object height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"RZ9jMh6hYYKdylsT5Y2ue","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"TjfkS7b-fAi2LYULJM2cW","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0G0gy-eqADqqaqj4UrLlF","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rEJhlpY9WV1Va2_qUgOy2","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZbCTCmEvD57smK4vXiFZr","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"tdRUrtu_d_Asjz_z8rDxC","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-POTmV-GRpUwUGxCQTK7Y","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zby5l5jWmAN9GBqnzI1fN","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bDeugRCTaPPFPG91MrG7C","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CM5ANbuxVks1EHcG-m_XJ","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"ac3Xae1TYAjjt_j3CGmhX","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d2lr3HZl2YCy2VrO0QA3a","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vt9oZmFGsmTXz34bsnwQS","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ilOEOsoD7uJgaGNAzFRNp","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fHxknThB5Sy8YS1ZMX2pt","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"g8hsNA6Kljn9nenagIc59","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sS6Ggnru7H2uAma4VbjGD","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mvQbR7MKq82jCuL22GZAh","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"KAlEFk7VlUK2RdNWcKhYw","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"XyT_NX_QNBT1shzcRriq2","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fBnHY2bwQ4qbiFMCcga1W","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g49Vmyj9RGWkPLcCxE2Re","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z8kKDLchMKEfKR12HPCOi","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Q0-24Tq-RxyvNRvFzKn1C","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"twHjSoIWEhDtqyKDOJe4K","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6LZEQVq3PA18fkICk2LJ3","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Qg0bVblZ6ocBN1uKX4Du_","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Za4GrCdJN9URI8Os-axV2","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"WJmUX_O_ogpsQ5ShK2TSI","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"DFW5aOyjulB7HRkBm9tUR","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fGLUlPHd9ZlIbwSi9Lvsi","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ps6pIW7pqBURo2_rvegO_","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NY5D9sgREaMrvEe0Oy4WV","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"siOQgG7QAEMBGmxPlkLBs","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EfdjgrX_nmTICusrmc9EV","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZAbK9WTMx6k8GzSJv9cIx","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ScKeihjh0KjnAV5YOneuv","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"V2qz8Y1alSPqiV3oTqW4L","name":"Renderer","brief":"","type":"ClassDoc","description":"

                          a base renderer object

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"AP5dpTI7iILb2G9seILja","name":"getHeight","brief":"","access":"public","deprecated":"since 15.12.0","see":["height"],"type":"ClassDoc","description":"

                          return the height of the system Canvas

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"7JPWFRRfybTCL_rVmlxL9","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"j6Fb-txnmhbaf9qJYwnBH","name":"getWidth","brief":"","access":"public","deprecated":"since 15.12.0","see":["width"],"type":"ClassDoc","description":"

                          return the width of the system Canvas

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"uWp3v8-bkz8ZkcYzIuz_t","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"oGUHE_Ij_fGUhOcwb7uvd","name":"Texture","brief":"","access":"public","deprecated":"since 10.4.0","see":["TextureAtlas"],"type":"ClassDoc","description":"

                          Alias of {@link TextureAtlas}

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"_UYM6WFzIy0shExYSoydM","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]}]},{"id":"UZ3vVGB2ypqi-einHAkX9","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                          the default method to sort object ("sorting", "z-buffer")

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jv2d07Ghr8zUkcdT1GNtV","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          the requested video size ratio

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"768rbriJ3rOe0n7H6LKBU","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the height of the canvas which this renderer draws to

                          ","params":[],"returns":[{"description":"

                          height of the system Canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"j1zbY3JTHNEOEuq1lW82I","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          true if the current rendering context is valid

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CLitLjbiQ8L5v3mNbMqBw","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          The Path2D instance used by the renderer to draw primitives

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kN0PgJQHLirB4beR8n_08","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

                          the scaling ratio to be applied to the main canvas

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mdG4NcTLmM59R79R5p7sF","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The given constructor options

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gP-AGj0pXBPkWmIGe-rC3","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

                          The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mppsUOrbQmJczZaGIhyjo","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the width of the canvas which this renderer draws to

                          ","params":[],"returns":[{"description":"

                          width of the system Canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wE8S822cry5JwsXImmbvA","name":"clear","brief":"

                          prepare the framebuffer for drawing a new frame

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"losShCMdAwTJNC9fcWwvn","name":"clearMask","brief":"","scope":"instance","see":["Renderer#setMask"],"type":"MethodDoc","description":"

                          disable (remove) the rendering mask set through setMask.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vo6bSpp5SNyPJz8nYToCw","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                          clear the rendering tint set through setTint.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Jrnt8iTDSNGSTpUhVC1q-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

                          optional parameters for the renderer

                          ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Zuk26hLBTuUBpyrAwYQAt","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

                          fill the given shape

                          ","params":[{"identifier":"shape","optional":false,"description":"

                          a shape object to fill

                          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"_R4XxAxiY_lRkxYy7g7BN","name":"flush","brief":"

                          render the main framebuffer on screen

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xV8d_ALdeHvyt87Ke9yJ2","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the current blend mode for this renderer

                          ","params":[],"returns":[{"description":"

                          blend mode

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"BsP61zzvQYNG1-FA5J5hQ","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a reference to the canvas which this renderer draws to

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RPEA01UPMHjWusUkPzDqY","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the current fill & stroke style color.

                          ","params":[],"returns":[{"description":"

                          current global color

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"isUe2s19zPM7idNN3Q9aI","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return a reference to this renderer canvas corresponding Context

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D | WebGLRenderingContext","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"yYhwLBn16f3HU0u1r_5aD","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the 2D Context object of the given Canvas
                          \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

                          use false to disable transparency

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7mxaRv5dVihjZOLy2ToDl","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

                          return a reference to the screen canvas

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UX4R1VYAgTnRvbkCEeaMI","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

                          return a reference to the screen canvas corresponding 2d Context
                          \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VGyXPcPHfVr0OCaUzY96X","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current global alpha

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zSTlzUkfTL-9U6H6swpIe","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if the given rect or bounds overlaps with the renderer screen coordinates

                          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"aJHhTVNXnwlgi9nFhpy23","name":"reset","brief":"

                          Reset context state

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vYA0ANNG1KUTAYkrracXM","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resizes the system canvas

                          ","params":[{"identifier":"width","optional":false,"description":"

                          new width of the canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          new height of the canvas

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"eqRDrpULAaE6Xi0hPOcyE","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

                          enable/disable image smoothing (scaling interpolation) for the given context

                          ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"m9VJf1_Hq4gwHRk_ZX2d-","name":"setMask","brief":"","scope":"instance","type":"MethodDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[{"identifier":"mask","optional":true,"description":"

                          the shape defining the mask to be applied

                          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

                          either the given shape should define what is visible (default) or the opposite

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"b9IV-X3F2wV1bc9rUqTcp","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set/change the current projection matrix (WebGL only)

                          ","params":[{"identifier":"matrix","optional":false,"dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Y0eFrBok6OL2U4Dace-E2","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set a coloring tint for sprite based renderables

                          ","params":[{"identifier":"tint","optional":false,"description":"

                          the tint color

                          ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

                          an alpha value to be applied to the tint

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"OxzToNr8qlDg750s2njaS","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

                          stroke the given shape

                          ","params":[{"identifier":"shape","optional":false,"description":"

                          a shape object to stroke

                          ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

                          fill the shape with the current color if true

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"YJtDmHAJIDyzzIOWTkjdV","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          tint the given image or canvas using the given color

                          ","params":[{"identifier":"src","optional":false,"description":"

                          the source image to be tinted

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

                          the color that will be used to tint the image

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

                          the composition mode used to tint the image

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          a new canvas element representing the tinted image

                          ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"ByopwKL0HIlWda3s2Gpyo","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates a Blob object representing the last rendered frame

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a Blob object representing the last rendered frame

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aNkIZlvJy3ZayMw6RxP83","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

                          returns a data URL containing a representation of the last frame rendered

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning a string containing the requested data URL.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mKZ_eelkQ9EkofK9Uofgw","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

                          creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

                          ","params":[{"identifier":"options","optional":true,"description":"

                          An object with the following properties:

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                          A string indicating the image format

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                          A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          A Promise returning an ImageBitmap.

                          ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"6R3vJf0UFJF124E-XUCxs","name":"ResponseObject","brief":"","access":"public","type":"ClassDoc","description":"

                          An object representing the result of an intersection.

                          ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"kz2HhutDTxR3YK7-5OjNr","name":"a","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The first object participating in the intersection

                          "},{"id":"2JiTp21WaVlhOjNJeqItQ","name":"aInB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Whether the first object is entirely inside the second

                          "},{"id":"_GdSNqvlPHZ5XcmqWAOvl","name":"b","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The second object participating in the intersection

                          "},{"id":"PVLkDDRJzlC7sOab6EeZa","name":"bInA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Whether the second object is entirely inside the first

                          "},{"id":"nVMrJ2YswsmfclJc6xf1Q","name":"indexShapeA","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The index of the colliding shape for the object a body

                          "},{"id":"KIcEudbleTjcnH0sm8BEL","name":"indexShapeB","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The index of the colliding shape for the object b body

                          "},{"id":"Q80k3GlAdQJBGVJmHgNo5","name":"overlap","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Magnitude of the overlap on the shortest colliding axis

                          "},{"id":"6K3JEs0osWJq7jFYVxgRm","name":"overlapN","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The shortest colliding axis (unit-vector)

                          "},{"id":"m_z1OgjpNMw_M_CAETH90","name":"overlapV","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The overlap vector (i.e. overlapN.scale(overlap, overlap)). If this vector is subtracted from the position of..."},{"id":"lwm047JTolHmO3vzgHXA4","name":"clear","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                          Set some values of the response back to their defaults.
                          \nCall this between tests if you are going to reuse a single this object for chaining

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]}]},{"id":"gtQnlXbi1kL6FESdmkHdj","name":"RoundRect","brief":"","type":"ClassDoc","description":"

                          a rectangle object with rounded corners

                          ","params":[],"returns":[],"extends":["Rect"],"implements":[],"members":[{"id":"O722GZTNnwpxFWqIAQgav","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GJ5YrVo9givFeIhJXjxeJ","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CEzrvP9AQnUSI5r_U0xI_","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"icf00RWkXao7tcbkJAjLG","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yCt-hl-v_yCoiPPEAoJaU","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_nG6r3EzjF9cLxzZ5f0HG","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pXtiID52cPJ_tuFYlfvnD","name":"pos","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          origin point of the Polygon

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1kpLGKuykx6RDz6gjQ68u","name":"radius","brief":"","defaultValue":"20","scope":"instance","type":"PropertyDoc","description":"

                          the radius of the rounded corner

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AgPhPPxt2hsG6wXcEgP1o","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iMt2pT6Mw_0RZSSLQ41N7","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qBYqOQiXstYtIc_tVO7Bt","name":"type","brief":"","defaultValue":"\"RoundRect\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bcjouSu2uxB4W5iuXR6_y","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AZRG0HjjLiU32XObyDH4Z","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fyASpNfUExinHb9uW9uZ4","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this RoundRect

                          ","params":[],"returns":[{"description":"

                          new RoundRect

                          ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"t22TMgC-QNWaTipB9lD9X","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          position of the rounded rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the rounded rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                          the rectangle width

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                          the rectangle height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":true,"default":"20","description":"

                          the radius of the rounded corner

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Oa0yGiHy5n3wgqbyy915T","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rounded rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a Rect to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rounded rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"G9vOz6m-H0efO3H1opmGt","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position, size and radius of the given rounded rectangle into this one

                          ","params":[{"identifier":"rrect","optional":false,"description":"

                          source rounded rectangle

                          ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l9VJPgo4GeKihTfztqlYi","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this RoundRect is identical to the specified one

                          ","params":[{"identifier":"rrect","optional":false,"dataType":{"tokens":[{"value":"RoundRect","kind":"canonical"},{"value":"RoundRect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mqt6TgCmzL0Jo9pv_vDsy","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this shape, the smallest Rectangle object completely containing this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8nzn_ofEKXnWpeGBew6pX","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"eKXd5T4NVxiJYar7BC7aC","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"uCL62lAsQlfolzTVlJppz","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"7ecAoTe8koBgOYJl_ZbEE","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"4eOCkyycxuOYitLnaadBN","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CQu4Ko0VpLO8QBObTKoVH","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d4tvofUQluP7GrD-Gkow9","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this Polygon (counter-clockwise) by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GhcRo2y6dCCdztmgXE2Xa","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the rectangle

                          ","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RNQlBNCg0g9noByhKqd29","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Scale this Polygon by the given vector

                          ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bkKggpefIqVNKhDTKB3Sv","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"US6a4K3Wv4bxZ-KQ3jw9_","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"q1wCPrWh8s1z7si6eenh3","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"hN2XNP_ZIEo_wsx7i2HwL","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dwTHfg12oq9nftDeddPzL","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_qauuRo6XfhQG7tTFZUOe","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vq0XNDqaCI2HKOd5Ozi84","name":"transform","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply the given transformation matrix to this Polygon

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cugBfOTp7fv7cb8KpTTYi","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pZoZWjhKEEeKIAawuxrok","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6qNcvIFL0ZSuoithOBWPh","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"v4N9WHJGdz5RlHi8bSGTo","name":"Sprite","brief":"","type":"ClassDoc","description":"

                          An object to display a fixed or animated sprite on screen.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"ifHNrkzpfNTsHA7O9Bnzo","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VMUwq8s_Dyu88yk3rFR2d","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YBg4gZdHEctdZpss9KrNN","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VDK9EMnwtVgxn2iEL-7-d","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3jxpBSo4jcRypZ2pJhtXf","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          pause and resume animation

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vMUYzq9Vky8ah6aqjBkPI","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                          animation cycling speed (delay between frame in ms)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qt9xyC1GJMQh55Ady0SoV","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jf_ton196D8vOHSdhflq2","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cDjNqxHjynxJXLt1O0EU3","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3dweDRgwKLWuY53q8FO6c","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vP1GahTRdX2qqsZvI4N1y","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w7v83K-XfZ54zOh2fSiWL","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aZo-Nb6GkcLDhLnlaS-uU","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AxiHBwpjquSi82kLhpmtN","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YSfm4caQqAHYArwfPamfO","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8iKQrCPidMcnyKRM69gaT","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Wu4e7s3so7VJj0R17RaLe","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RfXTE-hQaohha5ciFDcPM","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3-5xDl4-xU6RbtcamB-O2","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Unpeq18ZJhOoqCNHcXS_g","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SFUyIszLe2A3NpZ4wjgTf","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h9xsQYwH1wuhCL0rZIlZD","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vb69giE3yQ6Tl7JLRzSMa","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CLN7TERTL2lTcwGzG_lHf","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ljBTD8ufRWbir0t0OtH05","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hgVg85g3yBu-D1P4c1B1Z","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"973V0n-1aVa_RTNJx8UX4","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MyqXNizZ-85_OALIv_kC8","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                          global offset for the position to draw from on the source image.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9LoZTRriaS83uKLfU6RFc","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iumxPg7gnCJaEEDjND67u","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uTewoLz_5O9NWHtN_k8yT","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Syt-J3wda4P2xG1V9_S9k","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NEFuPui9AW7SZU2duJrM6","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"G7wQU1hMijPLhiGPnuPhI","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          The source texture object this sprite object is using

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EbWOFSgSv9SuOjBd7_k3G","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MfWBBlqDW2lhSolRfnvfr","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CwAh53yXusmZHYrEDiRA5","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OqEuK4GKvmaLOdVOu9rE-","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EJC69bvFvSW6T3MaV3dgb","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WHxTDoPwxqJMipUFiyEaK","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          add an animation
                          \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                          list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                          ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                          cycling speed for animation in ms

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          frame amount of frame added to the animation (delay between each frame).

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MMdGIO4JBox6kxDQqxqZF","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tneoF-ixKTvLV6Lc_yx5O","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LRxSmSl67Guw3MNTJtOMf","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vpomY0dk7JU2rNpdmPWaq","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a single sprite from a standalone image, with anchor in the center\n let sprite = new me.Sprite(0, 0, {\n image : \"PlayerTexture\",\n framewidth : 64,\n frameheight : 64,\n anchorPoint : new me.Vector2d(0.5, 0.5)\n });\n\n // create a single sprite from a packed texture\n mytexture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n );\n let sprite = new me.Sprite(0, 0, {\n image : mytexture,\n region : \"npc2.png\",\n });"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinates of the sprite object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinates of the sprite object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          Configuration parameters for the Sprite object

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.image","description":"

                          reference to spritesheet image, a texture atlas or to a texture atlas

                          ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | TextureAtlas | string","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1 | %2 | %3 | string"}},{"identifier":"settings.name","optional":true,"default":"\"\"","description":"

                          name of this object

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.region","optional":true,"description":"

                          region name of a specific region to use when using a texture atlas, see {@link TextureAtlas}

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.framewidth","optional":true,"description":"

                          Width of a single frame within the spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.frameheight","optional":true,"description":"

                          Height of a single frame within the spritesheet

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.tint","optional":true,"description":"

                          a tint to be applied to this sprite

                          ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.flipX","optional":true,"description":"

                          flip the sprite on the horizontal axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.flipY","optional":true,"description":"

                          flip the sprite on the vertical axis

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.5, y:0.5}","description":"

                          Anchor point to draw the frame at (defaults to the center of the frame).

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7cxi4J99whHBsfmF6ZLiS","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8MOSr8oGkft448hfj6yZ3","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"smylPWFVQpeIHdkP2_vAZ","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z3WqmnSA2EDtEl-BMlfR2","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Ekys8j8ZZI0ZWXAN4rf4W","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                          make the object flicker

                          ","params":[{"identifier":"duration","optional":false,"description":"

                          expressed in milliseconds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                          Function to call when flickering ends

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ebwfQszGrijdepSKT5fiR","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"28OIaJy32FrUPMKnrkK6b","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"imYmAxvEmZUpsYrFo4aKv","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AVyG4GDeBC3xONBAOBs6-","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"szCqRtDN8RCwwOg2cHFT6","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the current animation frame index.

                          ","params":[],"returns":[{"description":"

                          current animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ld1-_TgfQSUPUBvlIVhAb","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"bdOnUjuiIxZ8h-s0WWutY","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FywfyCD6JbhrGx5-Agk9j","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Nkz1g7lbJcxiwXnm2rmIf","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          return true if the specified animation is the current one.

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9Tb9xOlJRDHD-liY6hHE1","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9VQPxDNKBkqdMZlqLwBXe","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the flickering state of the object

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"P82BMr-bDtGnGr9xuL9r6","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UwgN3DRgWOGdT73F5xA6U","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dbx3ulKFNssA6MkV3cf8F","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rokp1bqPMHZqT_phWvolf","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NPAKBctwYEONPAJWFcb7L","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"PEALgHJk7UAv_5Nv5-KGx","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"ncDUu42ahDAXNGsraVc-Y","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SVjYcc9wLBVcW9z-58zTU","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pG3TEjrd6Q9AhDBhv9ZMx","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                          reverse the given or current animation if none is specified

                          ","params":[{"identifier":"name","optional":true,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WonCMAYKotNpcxjcz_3_K","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zSmERw1OHcPPjJXXh-Zff","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FSw4DO0R3L67TdwRCjxte","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"skVHbSfonztSAVYfol0FG","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                          force the current animation frame index.

                          ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                          animation frame index

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RNtehPPwFs03T25a_rXeV","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                          set the current animation\nthis will always change the animation & set the frame to zero

                          ","params":[{"identifier":"name","optional":false,"description":"

                          animation id

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                          animation id to switch to when complete, or callback

                          ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                          if false will reset the elapsed time counter since last frame

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mJfszridTRJosOyTV1zGU","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6nxwY55WyNIsAwGPtnl5O","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                          change the current texture atlas region for this sprite

                          ","params":[{"identifier":"region","optional":false,"description":"

                          typically returned through me.Texture.getRegion()

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vJIHxz6E7qAL2oBVKkawF","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZUVqYCfrVGWBPEBNbXXXZ","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Rduii-AGWSYClEVEOn7Rj","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"n6HpwQLC8-lQmL-8l4ZJC","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HehwXlHn587VwZyunuP7p","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V82f0G3ue7CVk8V9nAq9W","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"l8pNz6QCuE--Xn_D5Haln","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VyZG_SRkSOM6IBFEQt_ou","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"iD_t-6fYR1GdMyeVNO4I5","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gt7kU9Ta2KC7ttwF2RBCe","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"42TvNFkIFfyRRStnkqwGk","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          draw this srite (automatically called by melonJS)

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                          the viewport to (re)draw

                          ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"DO718fGE7St1U9An5rW5G","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                          update function.
                          \nautomatically called by the game manager {@link game}

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the Sprite is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"n_Fgd2ozZ4Z1UmdpESQBT","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"W5Azp1oWb9uDeNdglwnaN","name":"Stage","brief":"","see":["state"],"type":"ClassDoc","description":"

                          a default "Stage" object.\nevery "stage" object (title screen, credits, ingame, etc...) to be managed\nt...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"vNY6lEPrHKclILzT17MVD","name":"ambientLight","brief":"","access":"public","defaultValue":"\"#000000\"","scope":"instance","see":["Light2d"],"type":"PropertyDoc","description":"

                          an ambient light that will be added to the stage rendering

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"J2QbGdiW0crk0DkOyqwbg","name":"cameras","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The list of active cameras in this stage.\nCameras will be renderered based on this order defined in this list.\nOnly the &q...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D7y0ZUgZEU9bBofnyYTKs","name":"lights","brief":"","access":"public","examples":[{"caption":"","code":"// create a white spot light\nlet whiteLight = new me.Light2d(0, 0, 140, \"#fff\", 0.7);\n// and add the light to this current stage\nthis.lights.set(\"whiteLight\", whiteLight);\n// set a dark ambient light\nthis.ambientLight.parseCSS(\"#1117\");\n// make the light follow the mouse\nme.input.registerPointerEvent(\"pointermove\", me.game.viewport, (event) => {\n whiteLight.centerOn(event.gameX, event.gameY);\n});"}],"scope":"instance","see":["Light2d","Stage.ambientLight"],"type":"PropertyDoc","description":"

                          The list of active lights in this stage.\n(Note: Canvas Renderering mode will only properly support one light per stage)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l4ijqo-krepnc7XjZSHem","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          The given constructor options

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"90-dlCsX-s4BFUrxrpyqu","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"settings","optional":true,"description":"

                          The stage` parameters

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.cameras","optional":true,"default":"[new me.Camera2d()]","description":"

                          a list of cameras (experimental)

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1<%2>"}},{"identifier":"settings.onResetEvent","optional":true,"description":"

                          called by the state manager when reseting the object

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.onDestroyEvent","optional":true,"description":"

                          called by the state manager before switching to another state

                          ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[],"extends":[],"implements":[]},{"id":"qveGUCVrdtSCsUUmC6ScB","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          onDestroyEvent function
                          \ncalled by the state manager before switching to another state

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CgxH_X0ixQQDWZY6MpbXT","name":"onResetEvent","brief":"","scope":"instance","see":["state#change"],"type":"MethodDoc","description":"

                          onResetEvent function
                          \ncalled by the state manager when reseting the object\nthis is typically where you will load a lev...","params":[{"identifier":"...arguments","optional":true,"variadic":true,"description":"

                          optional arguments passed when switching state

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"22d8_vHl0o8mTQzKq6G2Q","name":"Text","brief":"","type":"ClassDoc","description":"

                          a generic system font object.

                          ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"DGsE7QThKowLKxXHbIXMR","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                          Define the renderable opacity
                          \nSet to zero if you do not wish an object to be drawn

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Va-y3OSP8CSQG9pB5SAl0","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object will always update, even when outside of the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"k1hG8ovdBXYZuic1iSqJb","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iSCTZPuJkZ0VZ5HxbIWwF","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                          The anchor point is used for attachment behavior, and/or when applying transformations.
                          \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"295ZtaKBkULaV4ndXaP-g","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                          When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cJMXgfpCGFq78WgrXCRI5","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                          the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DTyx3kSBnS7VFzmiGDtoG","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                          the renderable physic body

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4So0hpJbpZLnXXRfQwMs_","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tEPTKPZurboQfkvvnzLNt","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VKYiJULIbcfa11VuFxlRO","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          absolute center of this rectangle on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kNGGoSXGKG0FUDLe-5lzI","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the renderable default transformation matrix

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iAxnrY6N9n709HrlRU53Y","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          the depth of this renderable on the z axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nTAUMQV1rqrnIZoeosEag","name":"fillStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

                          defines the color used to draw the font.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3RDDY7f_cymHp0DE8fQcF","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YjZKCjQacVrrUGKtsSxR9","name":"fontSize","brief":"","defaultValue":"10","scope":"instance","type":"PropertyDoc","description":"

                          the font size (in px)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NWyV3xvwDBAH0uNyfrGNO","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          (G)ame (U)nique (Id)entifier"
                          \na GUID will be allocated for any renderable object added
                          \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IMtgphWir0ZiG_pLfJuIB","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          height of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fQ-hgHR2QsSTPM0B5Z6OA","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether the renderable object is visible and within the viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"31DoX2J3OvHc9zftwVaow","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          when true the renderable will be redrawn during the next update cycle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4dT9Ms-O9owOKmvWJzy89","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the horizontal axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CLsREBJCVI4JN8RudBn8Q","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                          returns true if this renderable is flipped on the vertical axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"39qSGrAX_cParOGiqZVWe","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                          Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Dmj3ATcnNM38eKQLlL1ob","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                          If true then physic collision and input events will not impact this renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dCZw_xwLg0jqblziaQK-9","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          make the renderable object persistent over level changes

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XXuCq9GK7mUBUSkreQg2V","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZwS0l8uKTmLrhMFM1CE2Y","name":"lineHeight","brief":"","defaultValue":"1.0","scope":"instance","type":"PropertyDoc","description":"

                          Set the line spacing height (when displaying multi-line strings).
                          \nCurrent font height will be multiplied with this va...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1pUd7iIQp9esV5aOxMeVy","name":"lineWidth","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                          sets the current line width, in pixels, when drawing stroke

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_1elQarfts2wm0mv8lSM_","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                          A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QaPEMVTDYSGDZ_8M8-gvJ","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                          The name of the renderable

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NUM_KjVrs04HSCexJE-C6","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                          an event handler that is called when the renderable leave or enter a camera viewport

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JZ1ZKvxdofLi33EJ1Tgqp","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          Array of points defining the Polygon
                          \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UMf8PfcO8t7O-_mcQZPqu","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                          Position of the Renderable relative to its parent container

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PVotxAARtTIgncC6sPvrt","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p7Ifuwz9UmwTCZVulAobz","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"p0qS44fZpQCNkYCgj0YDR","name":"strokeStyle","brief":"","defaultValue":"black","scope":"instance","type":"PropertyDoc","description":"

                          defines the color used to draw the font stroke.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A9ofBCj00KqPFteV79e9Y","name":"textAlign","brief":"","defaultValue":"\"left\"","scope":"instance","type":"PropertyDoc","description":"

                          Set the default text alignment (or justification),
                          \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sImPHn8lwlDNFj6NrpdTF","name":"textBaseline","brief":"","defaultValue":"\"top\"","scope":"instance","type":"PropertyDoc","description":"

                          Set the text baseline (e.g. the Y-coordinate for the draw operation),
                          \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dwVgJLJlnoaFTcMWP32db","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                          define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rqWXpemFMdnK7Al3pFj7f","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aVbaMRWpChSyQq2kQaT3C","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                          the shape type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rAG2E94A0ECUKTPDTQptV","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                          Whether to update this object when the game is paused.

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xou9QR-TR1xmByiV7Wstq","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the Rectangle

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TS3ZQGX3a4JkzxKsuc7mP","name":"wordWrapWidth","brief":"","defaultValue":"-1","scope":"instance","type":"PropertyDoc","description":"

                          the maximum length in CSS pixel for a single segment of text.\n(use -1 to disable word wrapping)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yPNxb3Z51cNwjuRkD-Qt9","name":"_text","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                          the text to be displayed

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XDTler9MZgjRqTMtEn1ve","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the angle to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          angle in radians

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g2L_Ko_TZhUMpem1CWFyZ","name":"bold","brief":"","scope":"instance","type":"MethodDoc","description":"

                          make the font bold

                          ","params":[],"returns":[{"description":"

                          this object for chaining

                          ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YDj7ustYmy9DjLKJ0gzZy","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the rectangle position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zBz5pLmPRFXid-MLUOXu6","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this rectangle

                          ","params":[],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XqPLgT465TwGzs0LVM9ny","name":"constructor","brief":"","examples":[{"caption":"","code":"let font = new me.Text(0, 0, {font: \"Arial\", size: 8, fillStyle: this.color});"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                          position of the text object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the text object

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                          the text configuration

                          ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"settings.font","description":"

                          a CSS family font name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","description":"

                          size, or size + suffix (px, em, pt)

                          ","dataType":{"tokens":[{"value":"number | string","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | string"}},{"identifier":"settings.fillStyle","optional":true,"default":"\"#000000\"","description":"

                          a CSS color value

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.strokeStyle","optional":true,"default":"\"#000000\"","description":"

                          a CSS color value

                          ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"settings.lineWidth","optional":true,"default":"0","description":"

                          line width, in pixels, when drawing stroke

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.textAlign","optional":true,"default":"\"left\"","description":"

                          horizontal text alignment

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"top\"","description":"

                          the text baseline

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.lineHeight","optional":true,"default":"1.0","description":"

                          line spacing height

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.anchorPoint","optional":true,"default":"{x:0.0, y:0.0}","description":"

                          anchor point to draw the text at

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"settings.wordWrapWidth","optional":true,"description":"

                          the maximum length in CSS pixel for a single segment of text

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"default":"\"\"","description":"

                          a string, or an array of strings

                          ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fMW7rng2iNHMK0iAw2bRu","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the rectangle contains the given point or rectangle

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point, or a rectangle to test

                          ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the rectangle contain the given point or rectangle, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8h7db9CZbfKKVhbILx_lj","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                          copy the position and size of the given rectangle into this one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          Source rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          new rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"659jsMaXv3W-pQQvYq2ot","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the distance to the specified target

                          ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          distance

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M26kf-xiYnVgx8j2FHvMD","name":"draw","brief":"","scope":"instance","type":"MethodDoc","description":"

                          draw a text at the specified coord

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          Reference to the destination renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Y8sLOhfEFxjQjhDCTxv-b","name":"drawStroke","brief":"","deprecated":"since 15.0.0","scope":"instance","type":"MethodDoc","description":"

                          draw a stroke text at the specified coord, as defined by the lineWidth and fillStroke properties...","params":[{"identifier":"renderer","optional":false,"description":"

                          Reference to the destination renderer instance

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":false,"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"e42aP65_PeioAGFHvrPsT","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is identical to the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if equals

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"WY3yKWxQIJvZeo-pM7GY0","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                          flip the renderable on the horizontal axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"whBb1HEu74QLD2Wq_oh3-","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                          flip the renderable on the vertical axis (around the center of the renderable)

                          ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                          true to flip this renderable.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GM4Onr7m1qvMaPh-ZWEVM","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                          return the renderable absolute position in the game world

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tMXlLBLvklCESvXVFL9vY","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns the bounding box for this renderable

                          ","params":[],"returns":[{"description":"

                          bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Tw7ONExdLgvriSZRU2Tgz","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          returns a list of indices for all triangles defined in this polygon

                          ","params":[],"returns":[{"description":"

                          an array of vertex indices for all triangles forming this polygon.

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"T7xvbjJcuzF1FwiTzcU6_","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          get the renderable alpha channel value

                          ","params":[],"returns":[{"description":"

                          current opacity value between 0 and 1

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VZEvO5fXqQwUhhsX6qkeI","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                          ","params":[],"returns":[{"description":"

                          true if the vertices are convex, false if not, null if not computable

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HuRzskbTNj5vKoWzzRMzj","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this rectangle are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"z6svn8cW1XxXazfMTo9Wp","name":"italic","brief":"","scope":"instance","type":"MethodDoc","description":"

                          make the font italic

                          ","params":[],"returns":[{"description":"

                          this object for chaining

                          ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GEpkU3TR0U656OQkC8lnh","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable towards the given target.

                          ","params":[{"identifier":"target","optional":false,"description":"

                          the renderable or position to look at

                          ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9FxHKcjt500tTa0hs_ja6","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

                          measure the given text size in pixels

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          reference to the active renderer

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"text","optional":true,"description":"

                          the text to be measured

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                          a TextMetrics object defining the dimensions of the given piece of text

                          ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oVBS9ggsxuwNEJyp4cQhN","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                          onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                          ","params":[{"identifier":"response","optional":false,"description":"

                          the collision response object

                          ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                          the other renderable touching this one (a reference to response.a or response.b)

                          ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                          true if the object should respond to the collision (its position and velocity will be corrected)

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"8Yu3cKmUbSMAa-ZINmbZs","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                          OnDestroy Notification function
                          \nCalled by engine before deleting the object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-wNK-Q6R7GX6gty9Eo_NL","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          check if this rectangle is intersecting with the specified one

                          ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          true if overlaps

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OL6tuVkWwIrmMYHeu9Pqs","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                          restore the rendering context after drawing (automatically called by melonJS).

                          ","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"-p5F0--8w65k21xY7YF3L","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                          Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                          a renderer object

                          ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"4ygHE4iZ1L90s09NyHBYM","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"43kH5JHPyF-gIrFF1cGHE","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                          resize the rectangle

                          ","params":[{"identifier":"w","optional":false,"description":"

                          new width of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                          new height of the rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1aSp-9HUgCrh2nhLtyb_T","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Rotate this renderable by the specified angle (in radians).

                          ","params":[{"identifier":"angle","optional":false,"description":"

                          The angle to rotate (in radians)

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                          an optional point to rotate around

                          ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0iPsHyGepQV1A5WOFK6om","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                          a number representing the abscissa of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                          a number representing the ordinate of the scaling vector.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PZyG7GKv4ezy_Nqds7yx0","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                          scale the renderable around his anchor point

                          ","params":[{"identifier":"v","optional":false,"description":"

                          scaling vector

                          ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8AWNWnyJMvG2TGLaSk6ml","name":"setFont","brief":"","examples":[{"caption":"","code":"font.setFont(\"Arial\", 20);\nfont.setFont(\"Arial\", \"1.5em\");"}],"scope":"instance","type":"MethodDoc","description":"

                          set the font family and size

                          ","params":[{"identifier":"font","optional":false,"description":"

                          a CSS font name

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"size","optional":true,"default":"10","description":"

                          size in px, or size + suffix (px, em, pt)

                          ","dataType":{"tokens":[{"value":"number | string","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | string"}}],"returns":[{"description":"

                          this object for chaining

                          ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NY8rEghJNpgkEsZAGLI1U","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the renderable alpha channel value

                          ","params":[{"identifier":"alpha","optional":false,"description":"

                          opacity value between 0.0 and 1.0

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mHZW9pYG4_aODMBgMfeqt","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set new value to the rectangle shape

                          ","params":[{"identifier":"x","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          position of the Rectangle

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                          width of the rectangle, or an array of vector defining the rectangle

                          ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                          height of the rectangle, if a numeral width parameter is specified

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aAyKko8f_cPU6PT_55Rcc","name":"setText","brief":"","scope":"instance","type":"MethodDoc","description":"

                          change the text to be displayed

                          ","params":[{"identifier":"value","optional":false,"default":"\"\"","description":"

                          a string, or an array of strings

                          ","dataType":{"tokens":[{"value":"number | string | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | string | %2"}}],"returns":[{"description":"

                          this object for chaining

                          ","dataType":{"tokens":[{"value":"Text","kind":"canonical"},{"value":"Text","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"elIgpCgWszG0CY4hkEYQl","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                          set the vertices defining this Polygon

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          array of vector or vertice defining the Polygon

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                          this instance for objecf chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h0P3nLnjHA0fo_MB_0M2J","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the Polygon to the given position vector.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"1MNy39P859sR3thdZgTKz","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply a 2d projection to this shapen

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cDJ23GRwHNplzp0_zHleE","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                          apply an isometric projection to this shape

                          ","params":[],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aDTPYEQdT8FXvsZnWOnzf","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this box.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this rectangle.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jepJrRGkOviqH2k6OT5K2","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                          multiply the renderable currentTransform with the given matrix

                          ","params":[{"identifier":"m","optional":false,"description":"

                          the transformation matrix

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QIFIYH2hqjrn5bG1p7vWm","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          translate the Polygon by the specified offset

                          ","params":[{"identifier":"x","description":"

                          x offset or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y offset

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          Reference to this object for method chaining

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YA5k70ToxraV-s8Ps9_4S","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                          merge this rectangle with another one

                          ","params":[{"identifier":"rect","optional":false,"description":"

                          other rectangle to union with

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                          the union(ed) rectangle

                          ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xBwxtWeIfs1j8ODvjlVW-","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update function (automatically called by melonJS).

                          ","params":[{"identifier":"dt","optional":false,"description":"

                          time since the last update in milliseconds.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          true if the renderable is dirty

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QYgOSipBuVsIpuuFSKODR","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          update the bounding box for this shape.

                          ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                          update the bounds size and position in (world) absolute coordinates

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                          this shape bounding box Rectangle object

                          ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aNUFgMfmWUaMOAp0Q-mcN","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                          called when the anchor point value is changed

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the new X value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the new Y value to be set for the anchor

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"5qsK9jkDdLA5WWra3CdYK","name":"TextMetrics","brief":"","type":"ClassDoc","description":"

                          a Text Metrics object that contains helper for text manipulation

                          ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"WUvt2jkzcJnN6fXTN3v9j","name":"ancestor","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                          a reference to the parent object that contains this TextMetrics object

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yRb8SBVJIiyRgmwr1tz58","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          bottom coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XSpz1oaVl7H64c-INd18r","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          return the center position of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xD2m63Xsb3nMxeyrXtC0n","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          center position of the bound on the x axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"miSbVfKA58mPNmuuNkwSz","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          center position of the bound on the y axis

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O2kAb2hcDwDt3-J35G0rj","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tuzXuZKdGiH9n-s2Z74Vo","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          left coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5KHqLPbMTHhKOYMdCNs-2","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          right coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"My2NJdAuM_O31lRHUzIuJ","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          top coordinate of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5fi1c48h9R-TGWCQkrygN","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                          the object type (used internally)

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wNyPrv2_6bYOdLeoN0yw_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          width of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A-8SM1lyTzdv_3Z8wmH3x","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          x position of the bound

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rodoWuLFvmOEXayvPprJL","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                          y position of the bounds

                          ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fLyUKfunIJMdY6u2gas9v","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given vertices to the bounds definition.

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          an array of Vector2d or Point

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

                          either to reset the bounds before adding the new vertices

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"dw40HIYjo95qbuEYdz8dD","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given bounds to the bounds definition.

                          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

                          either to reset the bounds before adding the new vertices

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"c05GUrr73awtJeuPuGT7K","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given quad coordinates to this bound definition, multiplied by the given matrix

                          ","params":[{"identifier":"x0","optional":false,"description":"

                          left X coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

                          top Y coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

                          right X coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

                          bottom y coordinates of the quad

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

                          an optional transform to apply to the given frame coordinates

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"gqu3KCaEnvi3gPWobX1DN","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                          add the given point to the bounds definition.

                          ","params":[{"identifier":"point","optional":false,"description":"

                          the vector or point to be added to the bounds

                          ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

                          an optional transform to apply to the given point (if the given point is a Vector2d)

                          ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"epAB-STIx5vvOjx2Qm5AJ","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                          center the bounds position around the given coordinates

                          ","params":[{"identifier":"x","optional":false,"description":"

                          the x coordinate around which to center this bounds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                          the y coordinate around which to center this bounds

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LNL_MuP0U83JouzxtpTIj","name":"clear","brief":"

                          reset the bound

                          ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YdwptpwIW5spLwLUYxlTZ","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                          clone this bounds

                          ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kAs3OIEPp0vHbF93BUexk","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"ancestor","optional":false,"description":"

                          the parent object that contains this TextMetrics object

                          ","dataType":{"tokens":[{"value":"Text | BitmapText","kind":"canonical"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"a8JdcJ5YyCA16FMO5Bjfs","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                          Returns true if the bounds contains the given point.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to check

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                          y coordinate

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          True if the bounds contain the point, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dpJ84FVluja_P1N9AlMaN","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                          determines whether all coordinates of this bounds are finite numbers.

                          ","params":[],"returns":[{"description":"

                          false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1eqU9tMshNFu6Ey9ac30n","name":"lineHeight","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the height of a segment of inline text in CSS pixels.

                          ","params":[],"returns":[{"description":"

                          the height of a segment of inline text in CSS pixels.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zWoKyx1wgMHQt_OzNaeOP","name":"lineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns the width of the given segment of inline text in CSS pixels.

                          ","params":[{"identifier":"text","optional":false,"description":"

                          the text to be measured

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"description":"

                          reference to an active 2d context for canvas rendering

                          ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          the width of the given segment of inline text in CSS pixels.

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o9K1X5GpQ_q0r98pk0lqy","name":"measureText","brief":"","scope":"instance","type":"MethodDoc","description":"

                          measure the given text size in CSS pixels

                          ","params":[{"identifier":"text","optional":false,"description":"

                          the text to be measured

                          ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"context","optional":true,"description":"

                          reference to an active 2d context for canvas rendering

                          ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          this

                          ","dataType":{"tokens":[{"value":"TextMetrics","kind":"canonical"},{"value":"TextMetrics","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fwJrzONeaIL18OUn4xui_","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns true if the two bounds intersect.

                          ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                          True if the bounds overlap, otherwise false

                          ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"NdIGTLBBBKbHFoo3vOaEY","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

                          sets the bounds to the given min and max value

                          ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8uSTojmCtSK0KA9FVoiVs","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Shifts the bounds to the given x, y position.

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to shift to

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6ONoBxBzJPVOFjCZZE2vG","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Returns a polygon whose edges are the same as this bounds.

                          ","params":[],"returns":[{"description":"

                          a new Polygon that represents this bounds.

                          ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uYvG_79s8znGNjPoaI7zX","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                          Translates the bounds by the given point

                          ","params":[{"identifier":"x","description":"

                          x coordinate or a vector point to translate by

                          ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Lk4MyofD6eGVOM5pC4sgQ","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                          Updates bounds using the given vertices

                          ","params":[{"identifier":"vertices","optional":false,"description":"

                          an array of Vector2d or Point

                          ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]},{"id":"DQsAWXdOHpHpxdG5wkE8y","name":"wordWrap","brief":"","scope":"instance","type":"MethodDoc","description":"

                          wrap the given text based on the given width

                          ","params":[{"identifier":"text","optional":false,"description":"

                          the text to be wrapped

                          ","dataType":{"tokens":[{"value":"string | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"string | %1"}},{"identifier":"width","optional":false,"description":"

                          maximum width of one segment of text in css pixel

                          ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"context","optional":true,"description":"

                          reference to an active 2d context for canvas rendering

                          ","dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                          an array of string representing wrapped text

                          ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"DjNI_MKc2NXbQm2z6S7oa","name":"TextureAtlas","brief":"","type":"ClassDoc","description":"

                          A Texture atlas class, currently supports :

                          \n
                            \n
                          • [TexturePacker]{@link http://www.codeandweb.com/texturepacke...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"wOPlLzo4m_VeUD6Nd5eI_","name":"addRegion","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add a region to the atlas

                            ","params":[{"identifier":"name","optional":false,"description":"

                            region mame

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"x","optional":false,"description":"

                            x origin of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y origin of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            height of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the created region

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"dbN9DWmvXwGuuWmd9PZNi","name":"addUVs","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add uvs mapping for the given region

                            ","params":[{"identifier":"atlas","optional":false,"description":"

                            the atlas dictionnary where the region is define

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"name","optional":false,"description":"

                            region (or frame) name

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"w","optional":false,"description":"

                            the width of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            the height of the region

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the created region UVs

                            ","dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0Lcc-5RswIuVDYNEI-Emc","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a texture atlas from a JSON Object\n game.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\")\n );\n\n // create a texture atlas from a multipack JSON Object\n game.texture = new me.TextureAtlas([\n me.loader.getJSON(\"texture-0\"),\n me.loader.getJSON(\"texture-1\"),\n me.loader.getJSON(\"texture-2\")\n ]);\n\n // create a texture atlas for a spritesheet with an anchorPoint in the center of each frame\n game.texture = new me.TextureAtlas(\n {\n framewidth : 32,\n frameheight : 32,\n anchorPoint : new me.Vector2d(0.5, 0.5)\n },\n me.loader.getImage(\"spritesheet\")"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"atlases","optional":false,"description":"

                            atlas information. See {@link loader.getJSON}

                            ","dataType":{"tokens":[{"value":"object | Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"object | %1"}},{"identifier":"src","optional":true,"default":"atlas.meta.image","description":"

                            Image source

                            ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | string | Array | Array | Array","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1 | %2 | string | %3<%4> | %5<%6> | %7"}},{"identifier":"cache","optional":true,"default":"false","description":"

                            Use true to skip caching this Texture

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"hjesoLbJDWG2VPI_Qlk81","name":"createAnimationFromName","brief":"","examples":[{"caption":"","code":" // create a new texture object under the `game` namespace\n game.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n );\n\n // create a new Animated Sprite\n let sprite = game.texture.createAnimationFromName([\n \"walk0001.png\", \"walk0002.png\", \"walk0003.png\",\n \"walk0004.png\", \"walk0005.png\", \"walk0006.png\",\n \"walk0007.png\", \"walk0008.png\", \"walk0009.png\",\n \"walk0010.png\", \"walk0011.png\"\n ]);\n\n // define an additional basic walking animation\n sprite.addAnimation (\"simple_walk\", [0,2,1]);\n // you can also use frame name to define your animation\n sprite.addAnimation (\"speed_walk\", [\"walk0007.png\", \"walk0008.png\", \"walk0009.png\", \"walk0010.png\"]);\n // set the default animation\n sprite.setCurrentAnimation(\"simple_walk\");\n // set the renderable position to bottom center\n sprite.anchorPoint.set(0.5, 1.0);"}],"scope":"instance","type":"MethodDoc","description":"

                            Create an animation object using the first region found using all specified names

                            ","params":[{"identifier":"names","optional":false,"description":"

                            list of names for each sprite\n(when manually creating a Texture out of a spritesheet, only numeric values are authorized)

                            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1 | %3<%2>"}},{"identifier":"settings","optional":true,"description":"

                            Additional settings passed to the {@link Sprite} contructor

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OpFe9WJfpI18ifBqV0ohO","name":"createSpriteFromName","brief":"","examples":[{"caption":"","code":"// create a new texture object under the `game` namespace\ngame.texture = new me.TextureAtlas(\n me.loader.getJSON(\"texture\"),\n me.loader.getImage(\"texture\")\n);\n...\n...\n// create a new \"coin\" sprite\nlet sprite = game.texture.createSpriteFromName(\"coin.png\");\n// set the renderable position to bottom center\nsprite.anchorPoint.set(0.5, 1.0);\n...\n...\n// create a 9-slice sprite\nlet dialogPanel = game.texture.createSpriteFromName(\n \"rpg_dialo.png\",\n // width & height are mandatory for 9-slice sprites\n { width: this.width, height: this.height },\n true\n);"}],"scope":"instance","type":"MethodDoc","description":"

                            Create a sprite object using the first region found using the specified name

                            ","params":[{"identifier":"name","optional":false,"description":"

                            name of the sprite

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings","optional":true,"description":"

                            Additional settings passed to the {@link Sprite} contructor

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"nineSlice","optional":true,"default":"false","description":"

                            if true returns a 9-slice sprite

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"Sprite | NineSliceSprite","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"QNx10C57a_y8NV2dsv1tT","name":"getAtlas","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the default or specified atlas dictionnary

                            ","params":[{"identifier":"name","optional":true,"description":"

                            atlas name in case of multipack textures

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"g-CIP14CMU2Q3My6lOKRD","name":"getFormat","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the format of the atlas dictionnary

                            ","params":[],"returns":[{"description":"

                            will return "texturepacker", or "ShoeBox", or "melonJS", or "Spritesheet (fixed cell si...","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"5_yrrTuKQDHb8F34mRA-I","name":"getRegion","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a normalized region (or frame) information for the specified sprite name

                            ","params":[{"identifier":"name","optional":false,"description":"

                            name of the sprite

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"atlas","optional":true,"description":"

                            name of a specific atlas where to search for the region

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"7XVHBzh01WR0BlFqYrTvK","name":"getTexture","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the source texture for the given region (or default one if none specified)

                            ","params":[{"identifier":"region","optional":true,"description":"

                            region name in case of multipack textures

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"6r8oDPAE2fZDFFVtWdwyq","name":"getUVs","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the uvs mapping for the given region

                            ","params":[{"identifier":"name","optional":false,"description":"

                            region (or frame) name

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                            region Uvs

                            ","dataType":{"tokens":[{"value":"Float32Array","kind":"canonical"},{"value":"Float32Array","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"mQJOVME_Bp32IuJTSHNSV","name":"Tile","brief":"","type":"ClassDoc","description":"

                            a basic tile object

                            ","params":[],"returns":[],"extends":["Bounds"],"implements":[],"members":[{"id":"5ZhgyY294S58yr-fPQWg4","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ebx4JUFHcG49jG_TGn5DL","name":"center","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            return the center position of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WA4R8MUNYS5tszqRCU4rg","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            center position of the bound on the x axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dp2ALQFbrLdyk2UwPF5ok","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            center position of the bound on the y axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q6d1jhE0OP2AIkTF4Dn1H","name":"flipped","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Global flag that indicates if the tile is flipped

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"idTYL5w6arTvSkIoiWX57","name":"flippedAD","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            True if the tile is flipped anti-diagonally

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GxwgHEIrJNdThq6r-6IkQ","name":"flippedX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            True if the tile is flipped horizontally

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"e17YFkiUzzSsIufXpGirE","name":"flippedY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            True if the tile is flipped vertically

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z5f7oUWHIzi1r_i1ddNNx","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iqXwmj_p_t8qI0efca5XT","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"01_weYdAcdLfc99IWxODN","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hytgmuDCEPs7IywvBUy2h","name":"tileId","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            tileId

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BsP-Hv_ndvcobVA0u6KnX","name":"tileset","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            tileset

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pVTWp6Rk9KJhH1meZ0hc-","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oU9E3v1FXxYbf-tYTbwbr","name":"type","brief":"","defaultValue":"\"Bounds\"","scope":"instance","type":"PropertyDoc","description":"

                            the object type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"prvYp9NIBty8jN17JrreC","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mmoOs1xO9HBEWBflJp4CO","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            x position of the bound

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QhGSbvklOHGRh460JzmuK","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            y position of the bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ihp5gdiqu73tNF0TIetUC","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add the given vertices to the bounds definition.

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            an array of Vector2d or Point

                            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}},{"identifier":"clear","optional":true,"default":"false","description":"

                            either to reset the bounds before adding the new vertices

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"EIFTbatIMd3lIElbcN5sd","name":"addBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add the given bounds to the bounds definition.

                            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}},{"identifier":"clear","optional":true,"default":"false","description":"

                            either to reset the bounds before adding the new vertices

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"8OP8xRaEnwkgK92_we0nO","name":"addFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add the given quad coordinates to this bound definition, multiplied by the given matrix

                            ","params":[{"identifier":"x0","optional":false,"description":"

                            left X coordinates of the quad

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y0","optional":false,"description":"

                            top Y coordinates of the quad

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x1","optional":false,"description":"

                            right X coordinates of the quad

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y1","optional":false,"description":"

                            bottom y coordinates of the quad

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"m","optional":true,"description":"

                            an optional transform to apply to the given frame coordinates

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FlzfoeCLswJO3lI6r2FSy","name":"addPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add the given point to the bounds definition.

                            ","params":[{"identifier":"point","optional":false,"description":"

                            the vector or point to be added to the bounds

                            ","dataType":{"tokens":[{"value":"Vector2d | Point","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Point","kind":"link"}],"template":"%1 | %2"}},{"identifier":"m","optional":true,"description":"

                            an optional transform to apply to the given point (if the given point is a Vector2d)

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YBLEBeGsq_FpZKNZ9TnfH","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the bounds position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this bounds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this bounds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rXCz02hc2DC_-yi-Oz9js","name":"clear","brief":"

                            reset the bound

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DAyGMPMffEf3EmWeCzZG-","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this bounds

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MziR3cTFGqC-MB1ADAFlt","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                            x index of the Tile in the map

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y index of the Tile in the map

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"gid","optional":false,"description":"

                            tile gid

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileset","optional":false,"description":"

                            the corresponding tileset object

                            ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Q8XeQQeBopOEzgn0ZRCqv","name":"contains","brief":"","examples":[{"caption":"","code":"if (bounds.contains(10, 10)) {\n // do something\n}\n// or\nif (bounds.contains(myVector2d)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the bounds contains the given point.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to check

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the bounds contain the point, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vFt11SAQwfYcQ0kYnkSQo","name":"getRenderable","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a renderable object for this Tile object

                            ","params":[{"identifier":"settings","optional":true,"description":"

                            see {@link Sprite}

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                            a me.Sprite object

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M93UobdLNWKjO3W4CqZpQ","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this bounds are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XoQ2cTb1VHOpuKt_OORL3","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the two bounds intersect.

                            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Bounds | Rect","kind":"canonical"},{"value":"Bounds","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            True if the bounds overlap, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dRB8VE1aZutPHvaEqRc7I","name":"setMinMax","brief":"","scope":"instance","type":"MethodDoc","description":"

                            sets the bounds to the given min and max value

                            ","params":[{"identifier":"minX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"minY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxX","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"maxY","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wo8iw5xfWSqSA7W5UG09t","name":"shift","brief":"","examples":[{"caption":"","code":"bounds.shift(10, 10);\n// or\nbounds.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the bounds to the given x, y position.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jeYZqgo1wffZVp24dw5Nr","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this bounds.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this bounds.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m_lL6JkUtJ5dVntfMEEhd","name":"translate","brief":"","examples":[{"caption":"","code":"bounds.translate(10, 10);\n// or\nbounds.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Translates the bounds by the given point

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"an15Ig-4HGzfEfn3WHikr","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Updates bounds using the given vertices

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            an array of Vector2d or Point

                            ","dataType":{"tokens":[{"value":"Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Point","kind":"link"}],"template":"%1<%2> | %3<%4>"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"Yoo2RSZddfNtEhJSaxUGp","name":"Timer","brief":"","see":["{@link timer} the default global timer instance"],"type":"ClassDoc","description":"

                            a Timer class to manage timing related function (FPS, Game Tick, Time...)

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"H-taXBdElcP_6qaJpc4Al","name":"fps","brief":"","access":"public","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Last measured fps rate.
                            \nThis feature is disabled by default, unless the debugPanel is enabled/visible.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5__Ptjw7pn89Ak6jrvVM1","name":"interpolation","brief":"","defaultValue":"false","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

                            Enable/disable frame interpolation

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Df7jCGTe4Q8BOZD1wOkfa","name":"maxfps","brief":"","access":"public","defaultValue":"60","scope":"instance","see":["tick"],"type":"PropertyDoc","description":"

                            Set the maximum target display frame per second

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"amxBW0PGnb5Rg3MfYktOp","name":"tick","brief":"","access":"public","defaultValue":"1","scope":"instance","see":["interpolation"],"type":"PropertyDoc","description":"

                            Last game tick value.
                            \nUse this value to scale velocities during frame drops due to slow hardware or when setting an F...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EZ5NhuHpeUJAhtNdCmsMX","name":"clearInterval","brief":"","scope":"instance","type":"MethodDoc","description":"

                            cancels the timed, repeating action which was previously established by a call to setInterval().

                            ","params":[{"identifier":"intervalID","optional":false,"description":"

                            ID of the interval to be cleared

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"THdp_mvr-f9kCYMTUtbLb","name":"clearTimeout","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Cancels a timeout previously established by calling setTimeout().

                            ","params":[{"identifier":"timeoutID","optional":false,"description":"

                            ID of the timeout to be cancelled

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"PZxZIOW5dcQzupl4MZ8Kw","name":"getDelta","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return elapsed time in milliseconds since the last update

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tUEX4FxieFO4TIA55X5Uv","name":"getTime","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return the current timestamp in milliseconds
                            \nsince the game has started or since linux epoch (based on browser suppor...","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m4NZZBs2FN9ryyikxX8F3","name":"setInterval","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" every 1000ms\nme.timer.setInterval(myFunction, 1000);\n// set a timer to call \"myFunction\" every 1000ms (respecting the pause state) and passing param1 and param2\nme.timer.setInterval(myFunction, 1000, true, param1, param2);"}],"scope":"instance","type":"MethodDoc","description":"

                            Calls a function continously at the specified interval. See setTimeout to call function a single time.

                            ","params":[{"identifier":"fn","optional":false,"description":"

                            the function to execute

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

                            the number of milliseconds (thousandths of a second) on how often to execute the function

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pauseable","optional":true,"default":"true","description":"

                            respects the pause state of the engine.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"args","optional":false,"variadic":true,"description":"

                            optional parameters which are passed through to the function specified by fn once the timer expires.

                            ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

                            a numeric, non-zero value which identifies the timer created by the call to setInterval(), which can be used later with me...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yfz2xPSzh3WOe2vl09CWh","name":"setTimeout","brief":"","examples":[{"caption":"","code":"// set a timer to call \"myFunction\" after 1000ms\nme.timer.setTimeout(myFunction, 1000);\n// set a timer to call \"myFunction\" after 1000ms (respecting the pause state) and passing param1 and param2\nme.timer.setTimeout(myFunction, 1000, true, param1, param2);"}],"scope":"instance","type":"MethodDoc","description":"

                            Calls a function once after a specified delay. See me.timer.setInterval to repeativly call a function.

                            ","params":[{"identifier":"fn","optional":false,"description":"

                            the function you want to execute after delay milliseconds.

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"delay","optional":false,"description":"

                            the number of milliseconds (thousandths of a second) that the function call should be delayed by.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"pauseable","optional":true,"default":"true","description":"

                            respects the pause state of the engine.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"args","optional":false,"variadic":true,"description":"

                            optional parameters which are passed through to the function specified by fn once the timer expires.

                            ","dataType":{"tokens":[{"value":"unknown","kind":"canonical"}],"template":"unknown"}}],"returns":[{"description":"

                            a positive integer value which identifies the timer created by the call to setTimeout(), which can be used later with me.t...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"8_-rnkpII7fMCEiDDQnjs","name":"TMXHexagonalRenderer","brief":"","type":"ClassDoc","description":"

                            an Hexagonal Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"K6zDs4eRE81HhPeOvrSx7","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the renderer can render the specified map or layer

                            ","params":[{"identifier":"component","optional":false,"description":"

                            TMX Map or Layer

                            ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"yFs8gqKQ79Y3jMHyQSVdd","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

                            the TMX map

                            ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"MjJWF4CUtK_J9keOKYj7D","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given tile at the specified layer

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

                            X coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

                            the tile object to draw

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wg_nN-fVUi0wNBvbrPNLc","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given TMX Layer for the given area

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

                            a TMX Layer object

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

                            the area of the layer to draw

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6XN7Z9leAvFl4eoP49vDu","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the bounding rect for this map renderer

                            ","params":[{"identifier":"layer","optional":true,"description":"

                            calculate the bounding rect for a specific layer (will return a new bounds object)

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nSYs3qlUqS5H0oJUlNtrb","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile position corresponding to the specified pixel

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pD8rdwCt1rOgkVYA1iEdS","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the pixel position corresponding of the specified tile

                            ","params":[{"identifier":"col","optional":false,"description":"

                            tile horizontal position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

                            tile vertical position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"FwjcBdEi9PLEBtMCFvg3f","name":"TMXIsometricRenderer","brief":"","type":"ClassDoc","description":"

                            an Isometric Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"e6BGAbyhlJU5Yhz5iOj9-","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the renderer can render the specified map or layer

                            ","params":[{"identifier":"component","optional":false,"description":"

                            TMX Map or Layer

                            ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"5vweYbBLTZmpbVjuTFMU9","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

                            the TMX map

                            ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"24y8DWUMm_6QNY4BsM2fI","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given tile at the specified layer

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

                            X coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

                            the tile object to draw

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"6VviVEoe1queiy8ZC-aXE","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given TMX Layer for the given area

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

                            a TMX Layer object

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

                            the area of the layer to draw

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"0y3bElwZj6SnrnnWYDk-3","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the bounding rect for this map renderer

                            ","params":[{"identifier":"layer","optional":true,"description":"

                            calculate the bounding rect for a specific layer (will return a new bounds object)

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"luYDT7qFOcPzdcZkUTvHC","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile position corresponding to the specified pixel

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zMMJhcndu2ZON2XD6CaMm","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the pixel position corresponding of the specified tile

                            ","params":[{"identifier":"col","optional":false,"description":"

                            tile horizontal position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

                            tile vertical position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"1AI_roSEBj4ny31J1-fL7","name":"TMXLayer","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Layer Object\nTiled QT 0.7.x format

                            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"xrqcJwCGnTSkaXuSjoTME","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                            Define the renderable opacity
                            \nSet to zero if you do not wish an object to be drawn

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M1JrUNnmCowiIfGLcvTLk","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object will always update, even when outside of the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SBUz-FGEB9yE8t774Duy0","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the parent object that contains this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"M20OtWg92yudhFWqE3CnV","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                            The anchor point is used for attachment behavior, and/or when applying transformations.
                            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xGHhoc9n-qWlxO-wXmx9g","name":"animatedTilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            All animated tilesets in this layer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"fuiL7xAoWgzOZxhO7kKMJ","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iTsKosbBRy9rXWjFrmoXp","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dJaXJ8VzinCSWhCMH5jJw","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                            the renderable physic body

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ul-VCsHiZbxT681EMhM48","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-7xlg4LLTxFg_G55A9zD4","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O354aY43vbqPSdHhVVp6d","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iXxM8DRv8QRDQ9Qeck7tS","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the layer class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lfm_QJSIKlvVboRuAd7Ye","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bccmw_m02BU67imRYQ1kQ","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JUKo9AKns2Vnx8XkZoiwY","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EGUl5rchcZBVVyYiS2OIf","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            (G)ame (U)nique (Id)entifier"
                            \na GUID will be allocated for any renderable object added
                            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"06YsJu-NGZYFUzPCMZXej","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Qvpmt3iLHoKuKoMPcE_6m","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object is visible and within the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D3ilBKQZY0cni80uLKAlU","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Layer contains tileset animations

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3xVISsNM50_l-Ivhb_X2n","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            when true the renderable will be redrawn during the next update cycle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SBrEsr0FgKehdssemkhin","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZvlN0-QPkjKxmx2wzJnF0","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MA3E1FMfgPvT4oNUTFmtD","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f4vdQL30KThkv0SqPbdqL","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            If true then physic collision and input events will not impact this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KGfgz8ZO1QAm3RYVJ0tZs","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QYBo8ZxkF_oMTclxoALQY","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ARvL6iKEpuZwiVVn--gJU","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cRHZ1ysc-WfJHFySsMtyH","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"T4yFKc5y9z-67AN_3WnWp","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                            an event handler that is called when the renderable leave or enter a camera viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IhRf1AOwMRHlJE4gZHOUA","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Array of points defining the Polygon
                            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AZBnnD80dAN0Ry9MGNEfl","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RVc0NasWvQDiuoZmL4Lep","name":"renderorder","brief":"","defaultValue":"\"right-down\"","scope":"instance","type":"PropertyDoc","description":"

                            the order in which tiles on orthogonal tile layers are rendered.\n(valid values are "left-down", "left-up&qu...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GkdXaVQ5BFRP8ZHE5BUHC","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"MM5ifpojRFOP1IUhXhmPP","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KxrYPs_Fe2lOZ5mKKsu0g","name":"tilesets","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The Layer corresponding Tilesets

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pzXe6ZusBjlM5avlHViZv","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ixL-LpM5DsF0Fj0JJ32Zl","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-1g8Vlw-_t5KDcHXzLloI","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cGmgBOCoVmDWpuHxbxE0T","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether to update this object when the game is paused.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qnM7P1lwSR09Q4BF17nk0","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0kBoAT4BqoHkbCxa6PtV5","name":"x","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Horizontal layer offset in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1h2eUeXr3wqU6PmtlyvVY","name":"y","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Vertical layer offset in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3moBiUWUJ7JenBsookk-7","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dVV2pI7Yl_uSlScOgo8gT","name":"cellAt","brief":"","examples":[{"caption":"","code":"// return the first tile at offset 0, 0\nlet tile = layer.cellAt(0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

                            Return the Tile object at the specified tile coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            x position of the tile (in Tile unit)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            x position of the tile (in Tile unit)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"boundsCheck","optional":true,"default":"true","description":"

                            check first if within the layer bounds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            corresponding tile or null if there is no defined tile at the position or if outside of the layer bounds

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xtortotSwVzZrhBYiJ7Lb","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the rectangle position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2qJOa1CXhGPqj8lPzpcC6","name":"clearTile","brief":"","examples":[{"caption":"","code":"me.game.world.getChildByType(me.TMXLayer).forEach(function(layer) {\n // clear all tiles at the given x,y coordinates\n layer.clearTile(x, y);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                            clear the tile at the specified position

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate (in map coordinates: row/column)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate (in map coordinates: row/column)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VtSTSv4eOq1i_yGgKYN2w","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this rectangle

                            ","params":[],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vl_gfsoZidsZ_kkm9t1W-","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

                            layer data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#layer})

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"data","optional":false,"description":"

                            layer data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#layer})

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"tilewidth","optional":false,"description":"

                            width of each tile in pixels

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileheight","optional":false,"description":"

                            height of each tile in pixels

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"orientation","optional":false,"description":"

                            "isometric" or "orthogonal"

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"tilesets","optional":false,"description":"

                            tileset as defined in Tiled

                            ","dataType":{"tokens":[{"value":"TMXTilesetGroup","kind":"canonical"},{"value":"TMXTilesetGroup","kind":"link"}],"template":"%1"}},{"identifier":"z","optional":false,"description":"

                            z-index position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"LES965Knr_PNAzWEeqbJt","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the rectangle contains the given point or rectangle

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point, or a rectangle to test

                            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the rectangle contain the given point or rectangle, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"GmtiWxuCpjP0RIg20GMgF","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            copy the position and size of the given rectangle into this one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            Source rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MaOvATE-QptoAY6qhANlC","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            distance

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"t5KaLUpt5n7KxKmwFfbVu","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer instance

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                            the viewport to (re)draw

                            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bNt4bWcIzkleJkiurPTmB","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is identical to the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if equals

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vZFd_uecMCrUlIPe5fBBY","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                            flip the renderable on the horizontal axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mq97jELDi8uTTls35Goqp","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                            flip the renderable on the vertical axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nm7jD8FbSXnBXGgVsbP0n","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the renderable absolute position in the game world

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aLMlNRhi6_dmdrX47jex6","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the bounding box for this renderable

                            ","params":[],"returns":[{"description":"

                            bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NtR0yeSglBeNXszcmwN-B","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns a list of indices for all triangles defined in this polygon

                            ","params":[],"returns":[{"description":"

                            an array of vertex indices for all triangles forming this polygon.

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"OX7ynzgP-yRRscHFfz0AV","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the renderable alpha channel value

                            ","params":[],"returns":[{"description":"

                            current opacity value between 0 and 1

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g60chtvV3ZG5Y-u0irOSd","name":"getRenderer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return the layer current renderer object

                            ","params":[],"returns":[{"description":"

                            renderer

                            ","dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"m9MGxPaXrWK0jbwUopPHf","name":"getTile","brief":"","examples":[{"caption":"","code":"// get the TMX Map Layer called \"Front layer\"\nlet layer = me.game.world.getChildByName(\"Front Layer\")[0];\n// get the tile object corresponding to the latest pointer position\nlet tile = layer.getTile(me.input.pointer.x, me.input.pointer.y);"}],"scope":"instance","type":"MethodDoc","description":"

                            Return the Tile object at the specified position

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            corresponding tile or null if there is no defined tile at the coordinate or if outside of the layer bounds

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7p_E5HDECsdhersiu87rk","name":"getTileById","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a new the Tile object corresponding to the given tile id

                            ","params":[{"identifier":"tileId","optional":false,"description":"

                            tileId

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                            X coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the tile object

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"hCTD63wsvlLShqRViUuRu","name":"getTileId","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return the TileId of the Tile at the specified position

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            TileId or null if there is no Tile at the given position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2GIiGpL_lOiTxVnWM5hL5","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                            ","params":[],"returns":[{"description":"

                            true if the vertices are convex, false if not, null if not computable

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"HjFov2ffnq6Wn9rn4-iNI","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this rectangle are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"fSt04rh7H_hOd1Aw9lZa4","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable towards the given target.

                            ","params":[{"identifier":"target","optional":false,"description":"

                            the renderable or position to look at

                            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"P-Jl1yUgVu5zkHRlqJbrJ","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                            ","params":[{"identifier":"response","optional":false,"description":"

                            the collision response object

                            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                            the other renderable touching this one (a reference to response.a or response.b)

                            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                            true if the object should respond to the collision (its position and velocity will be corrected)

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"siL_mwNYMsZVRi14gIv84","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bSVz91Rti51QTSc81lwf0","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is intersecting with the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"mM7V0Sw829X8WouCMRZFw","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                            restore the rendering context after drawing (automatically called by melonJS).

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"4PCJpd42-xMyQphTGltS8","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"dwFenZ3GyvyhMwf6VFE2z","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KnGLWIRSedkJT_izDvvSK","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resize the rectangle

                            ","params":[{"identifier":"w","optional":false,"description":"

                            new width of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            new height of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2jIsldRVqdHN3njG4t6ud","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"McDydz7l5pE_7pJuuR4tc","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                            a number representing the abscissa of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                            a number representing the ordinate of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Mkh3uo8M30k1BHJoip15G","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point

                            ","params":[{"identifier":"v","optional":false,"description":"

                            scaling vector

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HQ8lBa95nLaJ7OdtcGqk4","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the renderable alpha channel value

                            ","params":[{"identifier":"alpha","optional":false,"description":"

                            opacity value between 0.0 and 1.0

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2ocDlDSg72zLctAvYBtov","name":"setRenderer","brief":"","examples":[{"caption":"","code":"// use the parent map default renderer\nlet layer = new me.TMXLayer(...);\nlayer.setRenderer(map.getRenderer());"}],"scope":"instance","type":"MethodDoc","description":"

                            Set the TMX renderer for this layer object

                            ","params":[{"identifier":"renderer","optional":false,"dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FHI3yrzy2Jf5I3Pjcif4S","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set new value to the rectangle shape

                            ","params":[{"identifier":"x","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the rectangle, or an array of vector defining the rectangle

                            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                            height of the rectangle, if a numeral width parameter is specified

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zDgPLySkYy64ra2bmkJRi","name":"setTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            assign the given Tile object to the specified position

                            ","params":[{"identifier":"tile","optional":false,"description":"

                            the tile object to be assigned

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                            x coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y coordinate (in world/pixels coordinates)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the tile object

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x_71DHDmv3kb9wjPWbqNC","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the vertices defining this Polygon

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            array of vector or vertice defining the Polygon

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                            this instance for objecf chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aINfy76Yy7A8ijOiOuVlc","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the Polygon to the given position vector.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Fuj8ED3pAzxakyYssshq6","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply a 2d projection to this shapen

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-29pAMCpU0sgMMYVmSyi4","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply an isometric projection to this shape

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9iTZBfoG3Pw9RwdzxmB5s","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this box.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this rectangle.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mmdaX2dwYvJ54XDS7zYBO","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                            multiply the renderable currentTransform with the given matrix

                            ","params":[{"identifier":"m","optional":false,"description":"

                            the transformation matrix

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p_IlEgjpm_3bfCot6wEby","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            translate the Polygon by the specified offset

                            ","params":[{"identifier":"x","description":"

                            x offset or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y offset

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LzXqoi2x9vkLFpTlHU6aR","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                            merge this rectangle with another one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            other rectangle to union with

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            the union(ed) rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UP_Ga84Sm7Jk23t0NEh4t","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update function (automatically called by melonJS).

                            ","params":[{"identifier":"dt","optional":false,"description":"

                            time since the last update in milliseconds.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            true if the renderable is dirty

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Iwa9YISW-hxkrkI8Z1EZs","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update the bounding box for this shape.

                            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                            update the bounds size and position in (world) absolute coordinates

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this shape bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fBZMmoEN7wG_LxS-BDQiJ","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                            called when the anchor point value is changed

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the new X value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the new Y value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"MvfinAId3ReSErmZdNsCP","name":"TMXOrthogonalRenderer","brief":"","type":"ClassDoc","description":"

                            an Orthogonal Map Renderder

                            ","params":[],"returns":[],"extends":["TMXRenderer"],"implements":[],"members":[{"id":"o_VU9abDPgl8z3__xAhvm","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the renderer can render the specified map or layer

                            ","params":[{"identifier":"component","optional":false,"description":"

                            TMX Map or Layer

                            ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"_j5QF5Im1MV4Fg04r1oNo","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"map","optional":false,"description":"

                            the TMX map

                            ","dataType":{"tokens":[{"value":"TMXTileMap","kind":"canonical"},{"value":"TMXTileMap","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2q54Y79rIIAOGjc1W8J4S","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given tile at the specified layer

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

                            X coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

                            the tile object to draw

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"lOAOXhWmDSo02JyXeQHUR","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given TMX Layer for the given area

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

                            a TMX Layer object

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

                            the area of the layer to draw

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"3brneT1r-YHAnh7xRepRD","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the bounding rect for this map renderer

                            ","params":[{"identifier":"layer","optional":true,"description":"

                            calculate the bounding rect for a specific layer (will return a new bounds object)

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZPBHdStKz7CqGkbtALXH3","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile position corresponding to the specified pixel

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9Mw0ajwhxu2qF5cJ8XVRO","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the pixel position corresponding of the specified tile

                            ","params":[{"identifier":"col","optional":false,"description":"

                            tile horizontal position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

                            tile vertical position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"y3kMLK0EhDuA8E4wlcTsf","name":"TMXRenderer","brief":"","type":"ClassDoc","description":"

                            The map renderer base class

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"DKoGhxG_-_TXvPd2GG15I","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the renderer can render the specified map or layer

                            ","params":[{"identifier":"component","optional":false,"description":"

                            TMX Map or Layer

                            ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1r9J1U213bKLsEMFTr5HF","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"cols","optional":false,"description":"

                            width of the tilemap in tiles

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"rows","optional":false,"description":"

                            height of the tilemap in tiles

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tilewidth","optional":false,"description":"

                            width of each tile in pixels

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tileheight","optional":false,"description":"

                            height of each tile in pixels

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zMnF2qeYCmCyLqHkL96CL","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given tile at the specified layer

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

                            X coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

                            the tile object to draw

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"d6ccKINmiaoravi_Rfazq","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given TMX Layer for the given area

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

                            a TMX Layer object

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

                            the area of the layer to draw

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ysh7ut1Y6_DyOJJEvZE4g","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the bounding rect for this map renderer

                            ","params":[{"identifier":"layer","optional":true,"description":"

                            calculate the bounding rect for a specific layer (will return a new bounds object)

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Hk2jgp_zqQM_qwIgS8amP","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile position corresponding to the specified pixel

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"42SZewIg2s7n_ppIptht7","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the pixel position corresponding of the specified tile

                            ","params":[{"identifier":"col","optional":false,"description":"

                            tile horizontal position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

                            tile vertical position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"B4Y2R1kbo9UDPrUKxxDLT","name":"TMXStaggeredRenderer","type":"ClassDoc","description":"

                            a Staggered Map Renderder

                            ","params":[],"returns":[],"extends":["TMXHexagonalRenderer"],"implements":[],"members":[{"id":"utsJYW4j8RNNhmWU96l4H","name":"canRender","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the renderer can render the specified map or layer

                            ","params":[{"identifier":"component","optional":false,"description":"

                            TMX Map or Layer

                            ","dataType":{"tokens":[{"value":"TMXTileMap | TMXLayer","kind":"canonical"},{"value":"TMXTileMap","kind":"link"},{"value":"TMXLayer","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"GiFcSRaEUqNqoSfUNqxKx","name":"constructor","brief":"","access":"public","scope":"instance","type":"MethodDoc","params":[],"returns":[]},{"id":"QMsKXx0XlWGLVB4FZ9Aco","name":"drawTile","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given tile at the specified layer

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"x","optional":false,"description":"

                            X coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate where to draw the tile

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"tile","optional":false,"description":"

                            the tile object to draw

                            ","dataType":{"tokens":[{"value":"Tile","kind":"canonical"},{"value":"Tile","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bilq63dkaNgdQrc4N9m-4","name":"drawTileLayer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            draw the given TMX Layer for the given area

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"layer","optional":false,"description":"

                            a TMX Layer object

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}},{"identifier":"rect","optional":false,"description":"

                            the area of the layer to draw

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"FVR_dDGm2SfnzTrARr2yn","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the bounding rect for this map renderer

                            ","params":[{"identifier":"layer","optional":true,"description":"

                            calculate the bounding rect for a specific layer (will return a new bounds object)

                            ","dataType":{"tokens":[{"value":"TMXLayer","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ahnH5Fh6rb0tlsDQQvIvF","name":"pixelToTileCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile position corresponding to the specified pixel

                            ","params":[{"identifier":"x","optional":false,"description":"

                            X coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yTKf5mwlQoDmRDzV540Su","name":"tileToPixelCoords","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the pixel position corresponding of the specified tile

                            ","params":[{"identifier":"col","optional":false,"description":"

                            tile horizontal position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"row","optional":false,"description":"

                            tile vertical position

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional vector object where to put the return values

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"-Gb6nwpjSsmmi_Bf4LDyS","name":"TMXTileMap","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Map Object\nTiled QT +0.7.x format

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"thBtQOMQwmHFEJArZkPGP","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The map class.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rfPbicWokktxcY3NqL80T","name":"cols","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            width of the tilemap in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vOyXmh1T3n08Awt6yOqKg","name":"infinite","brief":"","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            is the map an infinite map

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0xVaFx-UCx_yapxviIH1s","name":"name","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            name of the tilemap

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l7WTI7Ibzdaw04tzdqTAM","name":"orientation","brief":"","defaultValue":"\"orthogonal\"","scope":"instance","type":"PropertyDoc","description":"

                            the map orientation type. melonJS supports “orthogonal”, “isometric”, “staggered” and “hexagonal”.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-1w3TSqOfQ-MPLq6HtiN1","name":"renderorder","brief":"","defaultValue":"\"right-down\"","scope":"instance","type":"PropertyDoc","description":"

                            the order in which tiles on orthogonal tile layers are rendered.\n(valid values are "left-down", "left-up&qu...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4VIzGNuaEy0Me4zT3_dOB","name":"rows","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            height of the tilemap in tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ulCr45ui4OsqvRQiWSHV0","name":"tiledversion","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The Tiled version used to save the file (since Tiled 1.0.1).

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dQgN1Rj02jeFEB5jA5gEh","name":"tileheight","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            Tile height

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WOhkqGJfdeZlIGR2Wom_U","name":"tilewidth","brief":"","defaultValue":"-","scope":"instance","type":"PropertyDoc","description":"

                            Tile width

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JLCcaiUu_aZp0XvS-pnRe","name":"version","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the TMX format version

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NGWpVxJyqwHwLh5tberUw","name":"addTo","brief":"","examples":[{"caption":"","code":"// create a new level object based on the TMX JSON object\nlet level = new me.TMXTileMap(levelId, me.loader.getTMX(levelId));\n// add the level to the game world container\nlevel.addTo(me.game.world, true, true);"}],"scope":"instance","type":"MethodDoc","description":"

                            add all the map layers and objects to the given container.\nnote : this will not automatically update the camera viewport

                            ","params":[{"identifier":"container","optional":false,"description":"

                            target container

                            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}},{"identifier":"flatten","optional":true,"default":"true","description":"

                            if true, flatten all objects into the given container, else a me.Container object will be created for each co...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"setViewportBounds","optional":true,"default":"false","description":"

                            if true, set the viewport bounds to the map size, this should be set to true especially if adding a level to the game worl...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ciQCFYjgS1R7alRg8U-X6","name":"constructor","brief":"","examples":[{"caption":"","code":"// create a new level object based on the TMX JSON object\nlet level = new me.TMXTileMap(levelId, me.loader.getTMX(levelId));\n// add the level to the game world container\nlevel.addTo(me.game.world, true);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"levelId","optional":false,"description":"

                            name of TMX map

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"data","optional":false,"description":"

                            TMX map in JSON format

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"RKHvWQfu_7x2HYRzD5ZTG","name":"destroy","brief":"

                            destroy function, clean all allocated objects

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rzf-HvLM2WaS6Wkp8HmSf","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the map bounding rect

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ci5RRb1kOdrqf49TCitz4","name":"getLayers","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return all the existing layers

                            ","params":[],"returns":[{"description":"

                            Array of Layers

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"TMXLayer","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"3HqsBRmeZa8Dqd2YqTokV","name":"getObjects","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return an Array of instantiated objects, based on the map object definition

                            ","params":[{"identifier":"flatten","optional":true,"default":"true","description":"

                            if true, flatten all objects into the returned array.\nwhen false, a me.Container object will be created for e...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Array of Objects

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"gSo2QOVY8CYcL0JGr_j4x","name":"getRenderer","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return the map default renderer

                            ","params":[],"returns":[{"description":"

                            a TMX renderer

                            ","dataType":{"tokens":[{"value":"TMXRenderer","kind":"canonical"},{"value":"TMXRenderer","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"x1-2jUaF5USUoBKJuEvRC","name":"TMXTileset","brief":"","type":"ClassDoc","description":"

                            a TMX Tile Set Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"9v1GvF3iPNwWT9NCofxlM","name":"class","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the tileset class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z3dvzFPowlyIPMo2Tj_z5","name":"isAnimated","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Tileset contains animated tiles

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"He3-G8N-VufZJ6kYtdL0W","name":"isCollection","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the tileset is a "Collection of Image" Tileset

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qonnaJFrIgin64ObiDRG1","name":"_lastUpdate","brief":"","access":"private","defaultValue":"0","scope":"instance","type":"PropertyDoc","description":"

                            Remember the last update timestamp to prevent too many animation updates

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nsxNXRpS0HKkhSK42CuwO","name":"animations","brief":"","access":"private","scope":"instance","type":"PropertyDoc","description":"

                            Tileset animations

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gXCzSpF1Ny-NAkNZQXn39","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"tileset","optional":false,"description":"

                            tileset data in JSON format ({@link http://docs.mapeditor.org/en/stable/reference/tmx-map-format/#tileset})

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"IdhBe22uoRdahWK9AieVJ","name":"contains","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if the gid belongs to the tileset

                            ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9uR9QmEeo5-Pqjk0S0oJD","name":"getTileImage","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tile image from a "Collection of Image" tileset

                            ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            corresponding image or undefined

                            ","dataType":{"tokens":[{"value":"Image","kind":"canonical"},{"value":"Image","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E_Pt_odafCCVQlEp6zeDV","name":"getTileProperties","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the properties of the specified tile

                            ","params":[{"identifier":"tileId","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"extends":[],"implements":[]},{"id":"dR1OrB4Azwb5egMtnPIYH","name":"getViewTileId","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Get the view (local) tile ID from a GID, with animations applied

                            ","params":[{"identifier":"gid","optional":false,"description":"

                            Global tile ID

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            View tile ID

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"dEv6_VNWDTMRaD5ePY2bn","name":"TMXTilesetGroup","brief":"","type":"ClassDoc","description":"

                            an object containing all tileset

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"MvjsuzL_ZZfQ_Md3OP62G","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add a tileset to the tileset group

                            ","params":[{"identifier":"tileset","optional":false,"dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"9sM0uSIAHAmAmljIjCQzZ","name":"getTilesetByGid","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tileset corresponding to the specified id
                            \nwill throw an exception if no matching tileset is found

                            ","params":[{"identifier":"gid","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            corresponding tileset

                            ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2WSVsi3acLZ5Miml20QLa","name":"getTilesetByIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the tileset at the specified index

                            ","params":[{"identifier":"i","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            corresponding tileset

                            ","dataType":{"tokens":[{"value":"TMXTileset","kind":"canonical"},{"value":"TMXTileset","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"rhV2YT7MkqiTDKeM1x0Xw","name":"Trigger","brief":"","type":"ClassDoc","description":"

                            trigger an event when colliding with another object

                            ","params":[],"returns":[],"extends":["Renderable"],"implements":[],"members":[{"id":"umNKn1Y9jXEwo7H1SI1fX","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                            Define the renderable opacity
                            \nSet to zero if you do not wish an object to be drawn

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZipBHUwRXdNyBEdXHeTW8","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object will always update, even when outside of the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"f_qJ_5WdBGXwtuc893f72","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the parent object that contains this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6nY0gnRL65LXTZdsRuV-x","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                            The anchor point is used for attachment behavior, and/or when applying transformations.
                            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7EQDxS57TO_4DID7CtfF3","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nFJupAZ20fC6w65M_jILW","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4ZZCf7d5nGu-L86MNyCuf","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                            the renderable physic body

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-18xdGAVE-i0jIWqp7E3k","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"t3yVwii0RrPdf9S_xqmBK","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4cg119p_EswimFGoz5zrC","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"79nhOz7bVUG5McvAZUvYW","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"akCFY0k3kKooJQes3Zp1Y","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1XuyqHI254YKN2eCxYbcU","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5Uk13f2yO7CY4yQIB6hVU","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            (G)ame (U)nique (Id)entifier"
                            \na GUID will be allocated for any renderable object added
                            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_Q_hrcc1diPS0o34x1kzQ","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"41SLX-DtpPLwCaQwl0c_6","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object is visible and within the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lvlostRUJh9uSP7UoguqK","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            when true the renderable will be redrawn during the next update cycle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TiwFmQwBN_GWUivqSlqqc","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"LKWV7kOFcr-37xPPHL-_P","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u5JvA7nYNrQuAwUuHnvHE","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iMT7g4eL1NDiYo7PAcP87","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            If true then physic collision and input events will not impact this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rrPDMmp6bqRiAZCFL-tm1","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aHvYX2d8KwNW7qVUFdpZw","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Gn1pbQplPMMh8c3Y7OZp2","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"34taduBLfgMcWBDXtCd7v","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JKhgziWtSnsTspSg7mtLR","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                            an event handler that is called when the renderable leave or enter a camera viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VCeZHGx5nyql4Ca3NlMR7","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Array of points defining the Polygon
                            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pgEYtSdpeAeUES0gQ5iVb","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EIgB_XAg53-id6zsglPQs","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-oora0Zgskgjm76LXGTp2","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"axsO1J9usB8H7V1n9kS0x","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6Wwc9GM_bbP-dzqkqd_fk","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kRjPwJ7263BfhcdYEt7Mz","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"19vJIJqfAXl950QeEFdnl","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether to update this object when the game is paused.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"c8eJkekjzhBItycB8FLlJ","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JWIJEiY1qwmrmR8vBjHaf","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PjcmuClK8YRv3ZfcZ2vzb","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the rectangle position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eovHpe8LW0b8rBrRfRkrv","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this rectangle

                            ","params":[],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OPylSpwVh-PMyoCaRXijf","name":"constructor","brief":"","examples":[{"caption":"","code":"world.addChild(new me.Trigger(\n x, y, {\n shapes: [new me.Rect(0, 0, 100, 100)],\n \"duration\" : 250,\n \"color\" : \"#000\",\n \"to\" : \"mymap2\"\n }\n));"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinates of the trigger area

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinates of the trigger area

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.width","optional":true,"description":"

                            width of the trigger area

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.height","optional":true,"description":"

                            height of the trigger area

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.shapes","optional":true,"description":"

                            collision shape(s) that will trigger the event

                            ","dataType":{"tokens":[{"value":"Array | Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Polygon","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Line","kind":"link"},{"value":"Array","kind":"canonical"},{"value":"Ellipse","kind":"link"}],"template":"%1<%2> | %3<%4> | %5<%6> | %7<%8>"}},{"identifier":"settings.duration","optional":true,"description":"

                            Fade duration (in ms)

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.color","optional":true,"description":"

                            Fade color

                            ","dataType":{"tokens":[{"value":"string | Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.event","optional":true,"default":"\"level\"","description":"

                            the type of event to trigger (only "level" supported for now)

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.to","optional":true,"description":"

                            level to load if level trigger

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.container","optional":true,"description":"

                            Target container. See {@link level.load}

                            ","dataType":{"tokens":[{"value":"string | Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"string | %1"}},{"identifier":"settings.onLoaded","optional":true,"description":"

                            Level loaded callback. See {@link level.load}

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"settings.flatten","optional":true,"description":"

                            Flatten all objects into the target container. See {@link level.load}

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"settings.setViewportBounds","optional":true,"description":"

                            Resize the viewport to match the level. See {@link level.load}

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"lQOY0dlw6ABgVTCXYN24g","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the rectangle contains the given point or rectangle

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point, or a rectangle to test

                            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the rectangle contain the given point or rectangle, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"qEv4GRBvPteOX4NyEKPjS","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            copy the position and size of the given rectangle into this one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            Source rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"92gf5hHF98fu7j5lhYzIi","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            distance

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0G_fs_qxxV4iPY6zIX374","name":"draw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Draw this renderable (automatically called by melonJS).\nAll draw operations for renderable are made respectively\nto the po...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer instance

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                            the viewport to (re)draw

                            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"haoSA5Nb19f3ZRqNqhvKx","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is identical to the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if equals

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"XuOmDPUmVbdYVv7wOvhDY","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                            flip the renderable on the horizontal axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mfhWjlDKSMtSpq2wAH4z2","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                            flip the renderable on the vertical axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2ihAD4cXwbVa0bgJ6DoHf","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the renderable absolute position in the game world

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2xZ1-66tjaKRfmluUsnyl","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the bounding box for this renderable

                            ","params":[],"returns":[{"description":"

                            bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EY8vpr3CBwb4iL_uvFJoE","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns a list of indices for all triangles defined in this polygon

                            ","params":[],"returns":[{"description":"

                            an array of vertex indices for all triangles forming this polygon.

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"0vPdQvrGIFLw3YZMWebXH","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the renderable alpha channel value

                            ","params":[],"returns":[{"description":"

                            current opacity value between 0 and 1

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sRNh2ZzJCohEGeRBSszmw","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                            ","params":[],"returns":[{"description":"

                            true if the vertices are convex, false if not, null if not computable

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"sxBUFGBTfSdQTFWL5GEwp","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this rectangle are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PnnUtN_cFIUffToi4tlBL","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable towards the given target.

                            ","params":[{"identifier":"target","optional":false,"description":"

                            the renderable or position to look at

                            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d1yqMnNIpAzHLDcmO4sge","name":"onCollision","brief":"","scope":"instance","type":"MethodDoc","description":"

                            onCollision callback, triggered in case of collision with this trigger

                            ","params":[{"identifier":"response","optional":false,"description":"

                            the collision response object

                            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                            the other renderable touching this one (a reference to response.a or response.b)

                            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                            true if the object should respond to the collision (its position and velocity will be corrected)

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"LFetgj8nssrhcuqADA9Fl","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TPlggor8uHwE0dp61M1oT","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is intersecting with the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kbXYVfVVW9lXFrNadFuAd","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                            restore the rendering context after drawing (automatically called by melonJS).

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"kk54_zPohyJ0NuHqOZutr","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"rfrHXjZ7yxmbh9EWjat_h","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w_p1v4ef0_0YKNtMQTkG4","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resize the rectangle

                            ","params":[{"identifier":"w","optional":false,"description":"

                            new width of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            new height of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"tKDCZnl1c0pKip9qRAxXS","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"AhWY1zyRY-cYK-SurADJM","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                            a number representing the abscissa of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                            a number representing the ordinate of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2OTBho0lquj1pyztqROi7","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point

                            ","params":[{"identifier":"v","optional":false,"description":"

                            scaling vector

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"-I8LpMw9U2l9xRN6p7qx8","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the renderable alpha channel value

                            ","params":[{"identifier":"alpha","optional":false,"description":"

                            opacity value between 0.0 and 1.0

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"raJ9giiiNLyo4MY9K0mdE","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set new value to the rectangle shape

                            ","params":[{"identifier":"x","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the rectangle, or an array of vector defining the rectangle

                            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                            height of the rectangle, if a numeral width parameter is specified

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Z2QxsfxmMXpv444_0fvDO","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the vertices defining this Polygon

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            array of vector or vertice defining the Polygon

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                            this instance for objecf chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mqxXJ-GswLN5lyjs789YP","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the Polygon to the given position vector.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HPBus_S8Vj0ZjNotml3N5","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply a 2d projection to this shapen

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"U9ulgSFyicRpdx8psyXzP","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply an isometric projection to this shape

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Lst1odSSbmeRBO6bpdafu","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this box.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this rectangle.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o7RjZZqmq2pBjSolyrj52","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                            multiply the renderable currentTransform with the given matrix

                            ","params":[{"identifier":"m","optional":false,"description":"

                            the transformation matrix

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"478j4RXF5-t94VaKN6DX5","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            translate the Polygon by the specified offset

                            ","params":[{"identifier":"x","description":"

                            x offset or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y offset

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Itbkw-Yj_RX1RydwJ8dXQ","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                            merge this rectangle with another one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            other rectangle to union with

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            the union(ed) rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Uyog-I73eJXNJG4H96UuW","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update function (automatically called by melonJS).

                            ","params":[{"identifier":"dt","optional":false,"description":"

                            time since the last update in milliseconds.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            true if the renderable is dirty

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"53ntECR-iL4egzGC2UWHd","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update the bounding box for this shape.

                            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                            update the bounds size and position in (world) absolute coordinates

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this shape bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"p3rHROyZlEViiPOkTGPM-","name":"triggerEvent","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            trigger this event

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"AGBKxMGoaFJ31uFmzVJNF","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                            called when the anchor point value is changed

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the new X value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the new Y value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"HVL8mhBMqbqYbJPn_M_kt","name":"Tween","brief":"","type":"ClassDoc","description":"

                            Javascript Tweening Engine

                            \nSuper simple, fast and easy to use tweening engine which incorporates optimised Robert Penne...","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Uulp-VPAL8vcKnxRBxxC3","name":"Easing","brief":"","access":"public","type":"EnumDoc","description":"

                            Easing Function :

                            \n

                            \n Easing.Linear.None
                            \n Easing.Quadratic.In
                            \n Easing.Quadratic.Out
                            \n Easing.Quadrati...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oA8bV6pwlJ01WT24vPNOv","name":"Interpolation","brief":"","access":"public","type":"EnumDoc","description":"

                            Interpolation Function :

                            \n

                            \n Interpolation.Linear
                            \n Interpolation.Bezier
                            \n Interpolation.CatmullRom\n

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d6J0PvIUYSguGiI9lYf5h","name":"chain","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            chain the tween

                            ","params":[{"identifier":"chainedTween","description":"

                            Tween(s) to be chained

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"reGpnM4nGxhxqpycmuaFZ","name":"constructor","brief":"","examples":[{"caption":"","code":"// add a tween to change the object pos.x and pos.y variable to 200 in 3 seconds\ntween = new me.Tween(myObject.pos).to({\n x: 200,\n y: 200,\n }, {\n duration: 3000,\n easing: me.Tween.Easing.Bounce.Out,\n autoStart : true\n}).onComplete(myFunc);"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"object","optional":false,"description":"

                            object on which to apply the tween

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"885k6BLCecIoXAfTiGsyz","name":"delay","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            delay the tween

                            ","params":[{"identifier":"amount","optional":false,"description":"

                            delay amount expressed in milliseconds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sdqr5KftWDrW9wBP2c3On","name":"easing","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            set the easing function

                            ","params":[{"identifier":"easing","optional":false,"description":"

                            easing function

                            ","dataType":{"tokens":[{"value":"Tween.Easing","kind":"canonical"},{"value":"Easing","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HaLp-I413LdyPOLlvo5zR","name":"interpolation","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            set the interpolation function

                            ","params":[{"identifier":"interpolation","optional":false,"description":"

                            interpolation function

                            ","dataType":{"tokens":[{"value":"Tween.Interpolation","kind":"canonical"},{"value":"Interpolation","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bzJSPa88CHUU5uNT0NzSH","name":"onComplete","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            onComplete callback

                            ","params":[{"identifier":"onCompleteCallback","optional":false,"description":"

                            callback

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v-oDFEHVl-EVCvBQLq9GN","name":"onStart","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            onStart callback

                            ","params":[{"identifier":"onStartCallback","optional":false,"description":"

                            callback

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XcExEwEwtulJ-GOdSCTJP","name":"onUpdate","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            onUpdate callback

                            ","params":[{"identifier":"onUpdateCallback","optional":false,"description":"

                            callback

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WNOpxAIBZC2ZK_ADMg6Ul","name":"repeat","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            Repeat the tween

                            ","params":[{"identifier":"times","optional":false,"description":"

                            amount of times the tween should be repeated

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ARMJprbqAqkFQLEe6Mafn","name":"start","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            start the tween

                            ","params":[{"identifier":"time","optional":true,"description":"

                            the current time when the tween was started

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K08DT4rKbBeCNh9nirOjT","name":"stop","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            stop the tween

                            ","params":[],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GJGgqEcEeMXL6sA2f9Plw","name":"to","brief":"","access":"public","scope":"instance","type":"MethodDoc","description":"

                            object properties to be updated and duration

                            ","params":[{"identifier":"properties","optional":false,"description":"

                            hash of properties

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options","optional":true,"description":"

                            object of tween properties, or a duration if a numeric value is passed

                            ","dataType":{"tokens":[{"value":"object | number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"object | %1"}},{"identifier":"options.duration","optional":true,"description":"

                            tween duration

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.easing","optional":true,"description":"

                            easing function

                            ","dataType":{"tokens":[{"value":"Tween.Easing","kind":"canonical"},{"value":"Easing","kind":"link"}],"template":"%1"}},{"identifier":"options.delay","optional":true,"description":"

                            delay amount expressed in milliseconds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.yoyo","optional":true,"description":"

                            allows the tween to bounce back to their original value when finished. To be used together with repeat to create endless l...","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"options.repeat","optional":true,"description":"

                            amount of times the tween should be repeated

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"options.interpolation","optional":true,"description":"

                            interpolation function

                            ","dataType":{"tokens":[{"value":"Tween.Interpolation","kind":"canonical"},{"value":"Interpolation","kind":"link"}],"template":"%1"}},{"identifier":"options.autoStart","optional":true,"description":"

                            allow this tween to start automatically. Otherwise call me.Tween.start().

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cM5fKuX15HSRuGymx2_D8","name":"yoyo","brief":"","access":"public","scope":"instance","see":["Tween#repeat"],"type":"MethodDoc","description":"

                            Allows the tween to bounce back to their original value when finished.\nTo be used together with repeat to create endless l...","params":[{"identifier":"yoyo","optional":false,"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this instance for object chaining

                            ","dataType":{"tokens":[{"value":"Tween","kind":"canonical"},{"value":"Tween","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]}]},{"id":"3alVHKazgtxGYlvbDdj5U","name":"UIBaseElement","brief":"","type":"ClassDoc","description":"

                            This is a basic clickable and draggable container which you can use in your game UI.\nUse this for example if you want to d...","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"ep-YSuo3IA1CbohqWPMBX","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                            Define the renderable opacity
                            \nSet to zero if you do not wish an object to be drawn

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"27WEyHK6feVh5v4HiJdIU","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object will always update, even when outside of the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W-bbvj6W0aw67zu2ucClV","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the parent object that contains this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m97uGo3sIN61baOO8Dz8A","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                            The anchor point is used for attachment behavior, and/or when applying transformations.
                            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"he6wGV1rv0SCNsUru-qsF","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the children z index should automatically be managed by the parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RA7oFScTUg3faEUyJEdpC","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the children list should be automatically sorted when adding a new child

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cjfNF0g1QQ-QQYnh4kjVL","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zmEjUstG-3zmDGhNQ6G8s","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a background color for this container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FOkWzFw7ypUf9c7HJ8fAC","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_k3uI5IEyET7MdSFyeAFB","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                            the renderable physic body

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-t3rwdE5UdfAVhjZhqoRu","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"d1Yaqsp9YAI9fXphZvJiz","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rX_A-m0u8mxckJqccFJo5","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jG96Ri3TfiMlBdIEhtTcD","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the container draw operation should clip his children to its own bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"47n6Jj7VP5JsPQ4fvKg-L","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A9RBYtq7sYu5pts3gIUTr","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NbunjlBjomfoKUxB3kt1z","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TTAH0r1rYyEY1p8vUEd6l","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

                            UI base elements use screen coordinates by default\n(Note: any child elements added to a UIBaseElement should have their fl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D9vQI-XTGmGZZ07YJUSWC","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            (G)ame (U)nique (Id)entifier"
                            \na GUID will be allocated for any renderable object added
                            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EYAHVkn0mtBaVUiReC5v0","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qPMl9rIwJNFo5VruS1tRO","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"X9PZ-_PzMwP503mHB1V2C","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1Vlvq-2kaxtfRqLeRxAGj","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object is visible and within the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZSchNRgouF0lc7f0hNLPi","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"uJLsEofTesF7dQWqIt4Ly","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            when true the renderable will be redrawn during the next update cycle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IXXp0mGyY0INf5onnESse","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WTtoCRAwMg9wbHgHIiBGe","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pmrWDi6TJK0NP4EqHyFaw","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9yZQJESn9bFGpX4bqB8Bi","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y95g7rXvHTBlW0yf2hkti","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oYp5csIUM-jFeEnvR6KAL","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            If true then physic collision and input events will not impact this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4m0UpncYjOaFAcXxIcHRl","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"9b5Wk90v814LFlvrM2Yh4","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6FwP-dsTthXkAXqbNLZWI","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6lPXfrRLW4OED1mWKbhVv","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wwGFgaHkr73CpxY2oZ-CA","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                            an event handler that is called when the renderable leave or enter a camera viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"oydjKVMowP4WPlrxCSOUu","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Array of points defining the Polygon
                            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"O-Sp80RWg132STO4ivrcI","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qsKtX9hi05YEbXzJfCYhL","name":"released","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            false if the pointer is down, or true when the pointer status is up

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jelFNJk7XwHsGW36HmnxJ","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ISbIqvP6EuxA7DR_kfjOA","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            whether the container is the root of the scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R4xX1NtnOUPuzXY7rIoU5","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"7_KxvjgAjo9Ys6xEV6upl","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                            The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q2_ntmeQRfeCOmMipTm0t","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tZVSSY7cy4Jucfzgqfi1M","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hrCu0eQ-ex-Ghtgo7tGSs","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vEaJK0Afa2E1uapAkTAsU","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether to update this object when the game is paused.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Muxfld45Q8p3GMmwjx0Ok","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hwAY-MdAuX11NY_wtkCFt","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add a child to the container
                            \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                            forces the z index of the child to the specified value

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the added child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"a0RqOi1QeqGEMUQq6hp5i","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add a child to the container at the specified index
                            \n(the list won't be sorted after insertion)

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                            The index at which to insert the child

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the added child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Rh-3QESQttFxtOiZAVpk0","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EqMsA8AobnGJwdo2lnOnf","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the rectangle position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_M2d3tY5MM6Btz8TOtwEJ","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this rectangle

                            ","params":[],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vthBTZruus3DaBMZNSI3V","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                            The x position of the container

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            The y position of the container

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the container

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            height of the container

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"HKBFVeZ6oSxc9-vySm9ED","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the rectangle contains the given point or rectangle

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point, or a rectangle to test

                            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the rectangle contain the given point or rectangle, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"h50xq47BMTVT6EvIPPXHi","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            copy the position and size of the given rectangle into this one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            Source rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"b4a24e8oFQ4MrVXdRaDT_","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            distance

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BZDWJmaHMAbCgFGifcs70","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is identical to the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if equals

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"2NjtS97XYdISCIIGkmoyU","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                            flip the renderable on the horizontal axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nwGe31FucBP1WjdJhILCn","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                            flip the renderable on the vertical axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Sq3KEOod_RsQADKe6K7bT","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                            The forEach() method executes a provided function once per child element.
                            \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                            fnction to execute on each element

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                            value to use as this(i.e reference Object) when executing callback.

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"j_Q8bvoEyyEe124xjuyYC","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the renderable absolute position in the game world

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"eEQHW85ijtZROcJPc1PCD","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the bounding box for this renderable

                            ","params":[],"returns":[{"description":"

                            bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3xwoAl_5Q7dz_shm8wTxA","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the Child at the specified index

                            ","params":[{"identifier":"index","optional":false,"description":"

                            The index of the child

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the child at the specified index

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"i-yJOjBNegXK7UvbWSXkM","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the child corresponding to the specified GUID
                            \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                            child GUID

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            corresponding child or null

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fM8hmuCjcJ-wM5zZb9KzX","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the list of childs with the specified name
                            \nas defined in Tiled (Name field of the Object Properties)
                            \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                            child name

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            Array of children

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Kljxc1ZmbGdrEjRriFPdG","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                            return the child corresponding to the given property and value.
                            \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                            Property name

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                            Value of the property

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            Array of childs

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"IkTe3TSVaXu5E80CwUX9D","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the list of childs with the specified class type

                            ","params":[{"identifier":"classType","optional":false,"description":"

                            Class type

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                            Array of children

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"5KhGjvj52L4QKvoL0-PdP","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the index of the given Child

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                            index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"a6SAvOQ9kZoZXP1FuT8IC","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return all child in this container

                            ","params":[],"returns":[{"description":"

                            an array of renderable object

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"XPikvwmNottxQEuI0WXWf","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns a list of indices for all triangles defined in this polygon

                            ","params":[],"returns":[{"description":"

                            an array of vertex indices for all triangles forming this polygon.

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"DhT9xTiBHssK9fgCG7_PO","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the next child within the container or undefined if none

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                            child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gqsRQ46Wlj0YaMzrWXngd","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the renderable alpha channel value

                            ","params":[],"returns":[{"description":"

                            current opacity value between 0 and 1

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NeKzn5J15SXlKFffcpsIS","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the instance of the root container (i.e. the current application World container).

                            ","params":[],"returns":[{"description":"

                            root container

                            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"UXM3P15kHXzImSzOjaYJR","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if contains the specified Child

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"-P_o9AgHkkT6ye5MXjTVj","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Checks if this container is root or if it's attached to the root container.

                            ","params":[],"returns":[{"description":"

                            true if this container is root or if it's attached to the root container

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"W5yDBc1K3hYsAsgK7MhZp","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                            ","params":[],"returns":[{"description":"

                            true if the vertices are convex, false if not, null if not computable

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Pg2AWwd0UpFS92nbJs4Ts","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this rectangle are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QaTrsSiNKRQi1Cy8kd1e_","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable towards the given target.

                            ","params":[{"identifier":"target","optional":false,"description":"

                            the renderable or position to look at

                            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CsHcQC7ZEMZQIvscggUBz","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the child in the group one step backward (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"PdcI5Hk71982ZU1eOFArJ","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the specified child the bottom (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"cltviG1URDPb4vJtpRINE","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the specified child to the top(z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"8L5eSbB6ESSTYpbfhv-_X","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the child in the group one step forward (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"5vjB6ORlynpP02Fc6L3k3","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                            a callback to be extended, triggered after a child has been added or removed

                            ","params":[{"identifier":"index","optional":false,"description":"

                            added or removed child index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vCoXqdx8jtmHL04QkSiRJ","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed (to be extended)

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"V9Vh4YGs4a_KUnTqDlX2H","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                            ","params":[{"identifier":"response","optional":false,"description":"

                            the collision response object

                            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                            the other renderable touching this one (a reference to response.a or response.b)

                            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                            true if the object should respond to the collision (its position and velocity will be corrected)

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ZKqBymnmHplW6718f2Ge8","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FiEwYORtoR42WIICrxhD3","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and held
                            \nto be extended

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"wOHy8mqNOHhDErlFBf_uz","name":"onMove","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is moved over the object

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"2HGSAy-fDzeCi9vo4f6oZ","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is leaving the object area

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"tndjC8smfiQ1nJNg4yA3R","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is over the object

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"D2w9WLr79xibKI3oVX-Ad","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and released (to be extended)

                            ","params":[],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Jzeg1ReAfwbKcmK1pht3E","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is intersecting with the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OyZ6qXhg14DQlKTbCsIzA","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                            restore the rendering context after drawing (automatically called by melonJS).

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"reQOyMEWKMjhuKGwtlbWL","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"_V64G0sfKYgQqYrt9PP1A","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xyN8dXjD4N72wtWSahy1U","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be removed

                            ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                            true to prevent calling child.destroy()

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"T525jA4z0q0wDLLk-8q2f","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Removes (and optionally destroys) a child from the container.
                            \n(removal is immediate and unconditional)
                            \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be removed

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                            True to prevent calling child.destroy()

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"NRpZJITFsEmFekIQtkKvX","name":"reset","brief":"

                            reset the container, removing all childrens, and reseting transforms.

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3GMBEOwY3_T4Y0786hxkv","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resize the rectangle

                            ","params":[{"identifier":"w","optional":false,"description":"

                            new width of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            new height of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YTQk4EnB_cl13whSPDc5z","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"x61o1DA_WPnYxGOhn3b9K","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                            a number representing the abscissa of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                            a number representing the ordinate of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"oO7MuPuLSkh7l7sughSlK","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point

                            ","params":[{"identifier":"v","optional":false,"description":"

                            scaling vector

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FSSA3Bx-NElWctVkyhDWU","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Automatically set the specified property of all childs to the given value

                            ","params":[{"identifier":"prop","optional":false,"description":"

                            property name

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                            property value

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                            recursively apply the value to child containers if true

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ckGqeSuo5E9C5e2JtkXaH","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the renderable alpha channel value

                            ","params":[{"identifier":"alpha","optional":false,"description":"

                            opacity value between 0.0 and 1.0

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"viH5Ufhac1WJ9xtAV3Dw7","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set new value to the rectangle shape

                            ","params":[{"identifier":"x","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the rectangle, or an array of vector defining the rectangle

                            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                            height of the rectangle, if a numeral width parameter is specified

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MXXWkIB8VBrLwuDNgH7n7","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the vertices defining this Polygon

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            array of vector or vertice defining the Polygon

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                            this instance for objecf chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2Fu9R2X3FvQFSfHRGLiDy","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the Polygon to the given position vector.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Lo52zStMULLs1tvYsacKE","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Manually trigger the sort of all the childs in the container

                            ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                            recursively sort all containers if true

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"JYFDMSKJf1bT6aVMAkT63","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Swaps the position (z-index) of 2 children

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"NZTbe4B5nPNL_tDf7VaJs","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply a 2d projection to this shapen

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dPbo-2FlgL9kH5bYVqQZj","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply an isometric projection to this shape

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nmjWepdBadfCQIMuYagCr","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this box.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this rectangle.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Sv63UssSfVGNFaxkzUBSP","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                            multiply the renderable currentTransform with the given matrix

                            ","params":[{"identifier":"m","optional":false,"description":"

                            the transformation matrix

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dLodxdMxpZnFD8rI0nPHf","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            translate the Polygon by the specified offset

                            ","params":[{"identifier":"x","description":"

                            x offset or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y offset

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SrTSCrjSZCUf1dVJNWAlx","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                            merge this rectangle with another one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            other rectangle to union with

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            the union(ed) rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"u61redKe0EseJemVn3E-l","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update the bounding box for this container.

                            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                            update the bounds size and position in (world) absolute coordinates

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this container bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8nOW9anV5CW4YsmfhI2UI","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            draw this renderable (automatically called by melonJS)

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer instance

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                            the viewport to (re)draw

                            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"aFa63bZjWdEqVGP4mdOV4","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            container update function.
                            \nautomatically called by the application update loop {@link Application}

                            ","params":[{"identifier":"dt","optional":false,"description":"

                            time since the last update in milliseconds.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            true if the Container is dirty

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"hs3EfMWjwHe2mLqH6RfpB","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                            called when the anchor point value is changed

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the new X value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the new Y value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"rWURTreC4avl10eQqPklP","name":"UISpriteElement","brief":"","type":"ClassDoc","description":"

                            This is a basic sprite based button which you can use in your Game UI.

                            ","params":[],"returns":[],"extends":["Sprite"],"implements":[],"members":[{"id":"0sFH_c_MIU40NhnGaaMHD","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                            Define the renderable opacity
                            \nSet to zero if you do not wish an object to be drawn

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dMqLwIUxbbLWtThzp80Hh","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object will always update, even when outside of the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"j3WPFhfYqyHiB6pWw5JF-","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the parent object that contains this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mqHzwaBN4ZXKs-uGg8sr2","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                            The anchor point is used for attachment behavior, and/or when applying transformations.
                            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h5Lr2Z72WpGvKallk6C15","name":"animationpause","brief":"","access":"public","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            pause and resume animation

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"URVnp6JJpDrDUj9CySkAl","name":"animationspeed","brief":"","access":"public","defaultValue":"100","scope":"instance","type":"PropertyDoc","description":"

                            animation cycling speed (delay between frame in ms)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PzTVtgTvZtOmU2XHQ3AaW","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zQsWF0ltFfx-HAdPOiRS-","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ttQYVr0BGPu0VGbhzoAz6","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                            the renderable physic body

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-CwBsd-Deti01T-nxvMpC","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hYT9gKs3dIzrkd8lZHLar","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8MDRziiPk_zYAPuszecS-","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hXEXGnQn1TsuL3v_op9om","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"_9LmerxqJ2IFQ7XC8abtz","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JxWYL5xhKM7GyKo_3fAe8","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

                            if this UISpriteElement should use screen coordinates or local coordinates\n(Note: any UISpriteElement elements added to a ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"xU4egMHabQSCmVZd-6AYU","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            (G)ame (U)nique (Id)entifier"
                            \na GUID will be allocated for any renderable object added
                            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"L042Nf3x_dX4DH_I8o8tz","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6hFQx-w_iC0lJSZhfZuPf","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"u0BvC7KBGserQUIS5hN3B","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"W3R3jc0pRHcGxe9ebgbd4","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object is visible and within the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BQkE5VEV5tdb1nCvNOg0I","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qaMrT-LT8iioHT2TMkx1h","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            when true the renderable will be redrawn during the next update cycle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DOZM4ySmmAe2_YKFlR9ra","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rRao7z3ognG5Ns8yKQkSB","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OHSPdEtTE3ZY_tclzPbKo","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0HdNfyKF6R9pWs9J-QxaA","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KAuiztbSNsJxFf0AL8qiu","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            If true then physic collision and input events will not impact this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R5GhteZrGn9Af2c3ExW-v","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jzafGMQEo8N6v6HOFtT7b","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VlobXaXqVLOrw2gWWeM5e","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"PCl-1B9peUSmvCiVvIk14","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"R4TaYqtykuu9PSv-X0c08","name":"offset","brief":"","access":"public","defaultValue":"<0.0,0.0>","scope":"instance","type":"PropertyDoc","description":"

                            global offset for the position to draw from on the source image.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zlLxNQ4P-mlH54rF062XT","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                            an event handler that is called when the renderable leave or enter a camera viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vBoVYTuKB5C4iFw2g34Rv","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Array of points defining the Polygon
                            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Pp2BOYg6vKMjX6UTBBKik","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IqHsAL_QHzJ7n8e_sRvKe","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BFmm1pwUyrMgnA9y2obID","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Camwx1JF5BDh5Xb0sdQLE","name":"source","brief":"","access":"public","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            The source texture object this sprite object is using

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jwyVIcBAnPyPamPTFe8dO","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"gpxGQbZdFl950jvE54THC","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JYIkwn3ddyPkCECIrEc68","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"JwgPvViyWXqO5Xborl3Bc","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether to update this object when the game is paused.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"plcaVV2l8nUDwaDV3luXT","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K__wGXuBPWGgla73t2wW5","name":"addAnimation","brief":"","examples":[{"caption":"","code":"// walking animation\nthis.addAnimation(\"walk\", [ 0, 1, 2, 3, 4, 5 ]);\n// standing animation\nthis.addAnimation(\"stand\", [ 11, 12 ]);\n// eating animation\nthis.addAnimation(\"eat\", [ 6, 6 ]);\n// rolling animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ]);\n// slower animation\nthis.addAnimation(\"roll\", [ 7, 8, 9, 10 ], 200);\n// or get more specific with delay for each frame. Good solution instead of repeating:\nthis.addAnimation(\"turn\", [{ name: 0, delay: 200 }, { name: 1, delay: 100 }])\n// can do this with atlas values as well:\nthis.addAnimation(\"turn\", [{ name: \"turnone\", delay: 200 }, { name: \"turntwo\", delay: 100 }])\n// define an dying animation that stop on the last frame\nthis.addAnimation(\"die\", [{ name: 3, delay: 200 }, { name: 4, delay: 100 }, { name: 5, delay: Infinity }])\n// set the standing animation as default\nthis.setCurrentAnimation(\"stand\");"}],"scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                            add an animation
                            \nFor fixed-sized cell sprite sheet, the index list must follow the\nlogic as per the following example...","params":[{"identifier":"name","optional":false,"description":"

                            animation id

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"index","optional":false,"description":"

                            list of sprite index or name\ndefining the animation. Can also use objects to specify delay for each frame, see below

                            ","dataType":{"tokens":[{"value":"Array | Array | Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"}],"template":"%1<%2> | %3 | %4"}},{"identifier":"animationspeed","optional":true,"description":"

                            cycling speed for animation in ms

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            frame amount of frame added to the animation (delay between each frame).

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dix8ZROJ_oNd9U_-Y2Xzf","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6Fcui6NGHPWfKze6lFpAp","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the rectangle position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"17lz47QTrMISgzSV_Hbqa","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this rectangle

                            ","params":[],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wa42LtgMwkfM6Hq5-t6Ou","name":"constructor","brief":"","examples":[{"caption":"","code":" // create a basic GUI Object\n class myButton extends UISpriteElement {\n constructor(x, y) {\n // call the UISpriteElement parent constructor\n super(x, y, {\n image: \"button\",\n framewidth: 100,\n frameheight: 50\n });\n }\n\n // output something in the console\n // when the object is clicked\n onClick(event) {\n console.log(\"clicked!\");\n // don't propagate the event\n return false;\n }\n });\n\n // add the object at pos (10,10)\n world.addChild(new myButton(10,10));"}],"scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate of the UISpriteElement Object

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate of the UISpriteElement Object

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings","optional":false,"description":"

                            See {@link Sprite}

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"anoVA0ndA_qfcoZBdNnR5","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the rectangle contains the given point or rectangle

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point, or a rectangle to test

                            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the rectangle contain the given point or rectangle, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"43Nl09Gysy2gjrJXnF0DD","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            copy the position and size of the given rectangle into this one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            Source rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I68NY2N3iTxfggDEFv6bF","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            distance

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NjATWbvF2vaiwFsFEeWk7","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is identical to the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if equals

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"feB9k8xD5rPYl_WJWRd2X","name":"flicker","brief":"","examples":[{"caption":"","code":"// make the object flicker for 1 second\n// and then remove it\nthis.flicker(1000, function () {\n world.removeChild(this);\n});"}],"scope":"instance","type":"MethodDoc","description":"

                            make the object flicker

                            ","params":[{"identifier":"duration","optional":false,"description":"

                            expressed in milliseconds

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"callback","optional":false,"description":"

                            Function to call when flickering ends

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nQ0sTPK2LVWSI9rFlyqP7","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                            flip the renderable on the horizontal axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"qWwf5Y8e7FxuWo_xl8PWE","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                            flip the renderable on the vertical axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uW842agCwGe5g_wG9MLKf","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the renderable absolute position in the game world

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zzoxRs-ITrNVEd8aYZGcJ","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the bounding box for this renderable

                            ","params":[],"returns":[{"description":"

                            bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uBor1UMVl7rdy5pTt9goQ","name":"getCurrentAnimationFrame","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the current animation frame index.

                            ","params":[],"returns":[{"description":"

                            current animation frame index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"uR6BnX6vd6OV27oeXN02m","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns a list of indices for all triangles defined in this polygon

                            ","params":[],"returns":[{"description":"

                            an array of vertex indices for all triangles forming this polygon.

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"7ImihH1va1OmJ9lUfqT32","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the renderable alpha channel value

                            ","params":[],"returns":[{"description":"

                            current opacity value between 0 and 1

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X5KzsD3lZinnhxjbKnzov","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                            ","params":[],"returns":[{"description":"

                            true if the vertices are convex, false if not, null if not computable

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Z1rOLHPcn155id1RnuFig","name":"isCurrentAnimation","brief":"","examples":[{"caption":"","code":"if (!this.isCurrentAnimation(\"walk\")) {\n // do something funny...\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            return true if the specified animation is the current one.

                            ","params":[{"identifier":"name","optional":false,"description":"

                            animation id

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"lH92EbTJP6eRKCNk5qz3R","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this rectangle are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"423dut-anDeLoSUu0ae3p","name":"isFlickering","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the flickering state of the object

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"oWicV-iXq3Y9YbJs_S-wP","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable towards the given target.

                            ","params":[{"identifier":"target","optional":false,"description":"

                            the renderable or position to look at

                            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4zjRQe0AZlCi00iGrHKem","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed (to be extended)

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"C96CS3vbWtiY-YgHlThUB","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                            ","params":[{"identifier":"response","optional":false,"description":"

                            the collision response object

                            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                            the other renderable touching this one (a reference to response.a or response.b)

                            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                            true if the object should respond to the collision (its position and velocity will be corrected)

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"PK8kJH6Md0t2eLq57TA3J","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GDDGKncNIgdwZfK78kDZJ","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and held
                            \nto be extended

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"WIQUtwlkXKFqUB6RBcGZ3","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is leaving the object area

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8uzXkcN3LkgXGqZ3HY0tu","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is over the object

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"R79Pig38UTQ8v4CN9KAP6","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and released (to be extended)

                            ","params":[],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"3i-bsnRXalN3nNZDnW8dB","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is intersecting with the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"0895jXBcSsGYu5AN9vFLv","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                            restore the rendering context after drawing (automatically called by melonJS).

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"8-SD3Z558tQEIGK99QlG_","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"Hy3gXaa70y2ks-N992PKU","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B69VQM_fEOLExxbMgdpS8","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resize the rectangle

                            ","params":[{"identifier":"w","optional":false,"description":"

                            new width of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            new height of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o5V3p2k9OK992sqoYMGJD","name":"reverseAnimation","brief":"","scope":"instance","see":["Sprite#animationspeed"],"type":"MethodDoc","description":"

                            reverse the given or current animation if none is specified

                            ","params":[{"identifier":"name","optional":true,"description":"

                            animation id

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"K_Yq8Hv0jP4o7OmUX9K2i","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BQB0Y2OsTo6fVjFJAsE9D","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                            a number representing the abscissa of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                            a number representing the ordinate of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WZ93N3698jRjRfwO6jGF3","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point

                            ","params":[{"identifier":"v","optional":false,"description":"

                            scaling vector

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8BxjGYpWZqJ1LcK_Pe2RA","name":"setAnimationFrame","brief":"","examples":[{"caption":"","code":"// reset the current animation to the first frame\nthis.setAnimationFrame();"}],"scope":"instance","type":"MethodDoc","description":"

                            force the current animation frame index.

                            ","params":[{"identifier":"index","optional":true,"default":"0","description":"

                            animation frame index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"WHzxswCoaSvh3SYiI-TkR","name":"setCurrentAnimation","brief":"","examples":[{"caption":"","code":" // set \"walk\" animation\n this.setCurrentAnimation(\"walk\");\n\n // set \"walk\" animation if it is not the current animation\n if (this.isCurrentAnimation(\"walk\")) {\n this.setCurrentAnimation(\"walk\");\n }\n\n // set \"eat\" animation, and switch to \"walk\" when complete\n this.setCurrentAnimation(\"eat\", \"walk\");\n\n // set \"die\" animation, and remove the object when finished\n this.setCurrentAnimation(\"die\", () => {\n world.removeChild(this);\n return false; // do not reset to first frame\n });\n\n // set \"attack\" animation, and pause for a short duration\n this.setCurrentAnimation(\"die\", () => {\n this.animationpause = true;\n\n // back to \"standing\" animation after 1 second\n setTimeout(function () {\n this.setCurrentAnimation(\"standing\");\n }, 1000);\n\n return false; // do not reset to first frame\n });"}],"scope":"instance","type":"MethodDoc","description":"

                            set the current animation\nthis will always change the animation & set the frame to zero

                            ","params":[{"identifier":"name","optional":false,"description":"

                            animation id

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"resetAnim","optional":true,"description":"

                            animation id to switch to when complete, or callback

                            ","dataType":{"tokens":[{"value":"string | Function","kind":"canonical"}],"template":"string | Function"}},{"identifier":"preserve_dt","optional":true,"default":"false","description":"

                            if false will reset the elapsed time counter since last frame

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OlVZlclWC7zirH5yh6Rzt","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the renderable alpha channel value

                            ","params":[{"identifier":"alpha","optional":false,"description":"

                            opacity value between 0.0 and 1.0

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8DzoKOh6FJ3H44YlLlGh-","name":"setRegion","brief":"","examples":[{"caption":"","code":"// change the sprite to \"shadedDark13.png\";\nmySprite.setRegion(mytexture.getRegion(\"shadedDark13.png\"));"}],"scope":"instance","see":["Texture.getRegion"],"type":"MethodDoc","description":"

                            change the current texture atlas region for this sprite

                            ","params":[{"identifier":"region","optional":false,"description":"

                            typically returned through me.Texture.getRegion()

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Sprite","kind":"canonical"},{"value":"Sprite","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KDJNggjpHzAoMUdlSwJCz","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set new value to the rectangle shape

                            ","params":[{"identifier":"x","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the rectangle, or an array of vector defining the rectangle

                            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                            height of the rectangle, if a numeral width parameter is specified

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PSjf7yONCMoZH_E4Sivis","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the vertices defining this Polygon

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            array of vector or vertice defining the Polygon

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                            this instance for objecf chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fc7M01iOAJhY44vZ_ic87","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the Polygon to the given position vector.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jFRh9y-JeW5OQvBo7XZ0W","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply a 2d projection to this shapen

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B7wBghLALb_5bLa0K3Lgi","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply an isometric projection to this shape

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B0DetAUU_U_fkEVwB28S4","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this box.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this rectangle.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NLjI2zhdT2ljSCBR-P43n","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                            multiply the renderable currentTransform with the given matrix

                            ","params":[{"identifier":"m","optional":false,"description":"

                            the transformation matrix

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7JbDdGbnhCQAYDUBuOdJY","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            translate the Polygon by the specified offset

                            ","params":[{"identifier":"x","description":"

                            x offset or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y offset

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JmGa80xHQy5ddUP6bNbV7","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                            merge this rectangle with another one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            other rectangle to union with

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            the union(ed) rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Y_zSKUgDToX4hMzE0mXy0","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update the bounding box for this shape.

                            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                            update the bounds size and position in (world) absolute coordinates

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this shape bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xRWxMwr7XoFDHy5AKuCU7","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            draw this srite (automatically called by melonJS)

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer instance

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                            the viewport to (re)draw

                            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"sGUjO4DoUj-0zbk77DKZt","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            update function.
                            \nautomatically called by the game manager {@link game}

                            ","params":[{"identifier":"dt","optional":false,"description":"

                            time since the last update in milliseconds.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            true if the Sprite is dirty

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1jIqmP99W2MrBtdmWCHMd","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                            called when the anchor point value is changed

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the new X value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the new Y value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"2dwKTIxe7PU0uWYCKdGt4","name":"UITextButton","brief":"","type":"ClassDoc","description":"

                            This is a basic base text button which you can use in your Game UI.

                            ","params":[],"returns":[],"extends":["UIBaseElement"],"implements":[],"members":[{"id":"1fgJ8Bp-XNYQJldp1muKT","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                            Define the renderable opacity
                            \nSet to zero if you do not wish an object to be drawn

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dwXeSmWlVDz9bLoguQsAF","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object will always update, even when outside of the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rm15RYlM3URTBMBmTRjO4","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the parent object that contains this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VNLzEXWl31TP9j7R9xQjd","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                            The anchor point is used for attachment behavior, and/or when applying transformations.
                            \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XX-w8PPHd4AdMH4eErjMc","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the children z index should automatically be managed by the parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"iWJi0u8o3Q-BbOX3K9211","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the children list should be automatically sorted when adding a new child

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Lt939efoIS1XOZFNxfMf5","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                            When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vy8ajTV4IaD5PRPy-s-kz","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a background color for this container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"exgr-qfp5tLczqP3YYt0D","name":"bindKey","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The key to bind the action to

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3WsqePCnhw5CvUT-EEZLH","name":"bitmapText","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the bitmapText used by the UITextButton class

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bPr_CE8WlsqcHzJO8jPiB","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                            the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Y-y4uhjyMI_DU2HautlVK","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                            the renderable physic body

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"mnjT1LFX9SvzSG7tN28A1","name":"borderStrokeColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The css value of a color to be used to draw the border

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Vz-E14xmm3dvySCIauKmy","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            bottom coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"IhpmxyEEIrXkasiOxeFJ_","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yfDcFxntt5JSo-x8DTttd","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            absolute center of this rectangle on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2mcJJgMSt_npC14nd7s9m","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the container draw operation should clip his children to its own bounds

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EfXOSClq_MQePn9iQvZVs","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the renderable default transformation matrix

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0RN_KD0qPu47jfeLSFLhg","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the depth of this renderable on the z axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8ai8WrqPt89xwyyfMHZZd","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"buEstEVk1wAoQz-ThKNjb","name":"floating","brief":"","defaultValue":"true","scope":"instance","see":["Renderable.floating"],"type":"PropertyDoc","description":"

                            UI base elements use screen coordinates by default\n(Note: any child elements added to a UIBaseElement should have their fl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"4gwE9tR3BAFDpbv_5pUOP","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            (G)ame (U)nique (Id)entifier"
                            \na GUID will be allocated for any renderable object added
                            \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"b9Zpcg73ckV15IwwBrW_8","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            height of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HUDBW8YHAlwSXXW_SyCvh","name":"holdThreshold","brief":"","defaultValue":"250","scope":"instance","type":"PropertyDoc","description":"

                            Tap and hold threshold timeout in ms

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Z6Qc9roz9bQfZxbTlMRSy","name":"hover","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            true if the pointer is over the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6R2vcY1smhyPAftxTRiyP","name":"hoverOffColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The css value of a color to be used if the pointer is nothovering over the button

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"l7xlbBm5ygJ2h-Pd1VUr4","name":"hoverOnColor","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The css value of a color to be used if the pointer hovers over the button

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6K4_BZvFkZNBJUduL9LB3","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether the renderable object is visible and within the viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s1W6s0LdKqE5ynCGlfQJI","name":"isClickable","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"D7-30GL5XS0nZcbGKVlHk","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            when true the renderable will be redrawn during the next update cycle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BcYQeta9PzDnejMwqtUMX","name":"isDraggable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be clicked or not

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GuIBQN96MTIwbMkixOrwQ","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the horizontal axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"m0aSgPMhC2J_K87PiikTC","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                            returns true if this renderable is flipped on the vertical axis

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aF0WZOpsmK3dAPpdoivBE","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                            Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3v1LxPu3bP9bZ_lnTSM5h","name":"isHoldable","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            object can be tap and hold

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zyGH_JVbRyvIg0g8GxwjE","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            If true then physic collision and input events will not impact this renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ck4tCGZMrf05fpQeIc7XU","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            make the renderable object persistent over level changes

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Wd8Xbh-ji-DYCgGYIOniz","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            left coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ytemxomJYeYWsXC606A7z","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                            A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vbSWbKf1FseEprvPU0AkS","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                            The name of the renderable

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Akhhe5pLuPgHQHMjFUJbw","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                            an event handler that is called when the renderable leave or enter a camera viewport

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"kg6EUGpoSDx3EKRGPAUcn","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            Array of points defining the Polygon
                            \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qKZltBpLFPg4Lc9BrcDlD","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            Position of the Renderable relative to its parent container

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"0T1T_BKRZVdMMWRDZFzrd","name":"released","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            false if the pointer is down, or true when the pointer status is up

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KR1xFQw_MY0cTAJzJRWdU","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            right coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sbj_ir9FkTDP2R72cq9_K","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            whether the container is the root of the scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"COIF41BRVglPYfIAf92Wm","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                            (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pLP8F2KBWt5yUcee0Cmaa","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                            The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"1eK4_VAP8csVRkFybI2GR","name":"textAlign","brief":"","access":"public","defaultValue":"\"center\"","scope":"instance","type":"PropertyDoc","description":"

                            Set the default text alignment (or justification),
                            \npossible values are "left", "right", and "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vxjn_ekvFq5K6_7luOTzH","name":"textBaseline","brief":"","access":"public","defaultValue":"\"middle\"","scope":"instance","type":"PropertyDoc","description":"

                            Set the text baseline (e.g. the Y-coordinate for the draw operation),
                            \npossible values are "top", "hang...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UocVIYDY-_3LGeamZe5G9","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                            define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UxuB2nXSCl2L6BTILVKV7","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            top coordinate of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EGRyCeK0ZAnyJCiQKpD9D","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                            the shape type (used internally)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"APUNYbxTMzzJoj3yLsxN1","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                            Whether to update this object when the game is paused.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qhWB2yrUHKyOn3YV_iUO_","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            width of the Rectangle

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vM82ptcc5_Rv14uHcuviI","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add a child to the container
                            \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                            forces the z index of the child to the specified value

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the added child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"C7amdIrbMRr5Zxt5KUAvE","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add a child to the container at the specified index
                            \n(the list won't be sorted after insertion)

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                            The index at which to insert the child

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the added child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Wr3D0UfopMQMAOdQbMgxK","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"MsJDAxZgd-3QOx3ls20v9","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                            center the rectangle position around the given coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the x coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the y coordinate around which to center this rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"KkQQdpXXSYNXEcRoQtG15","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clone this rectangle

                            ","params":[],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"9l03d3Er-gwxJtFhUW_8Q","name":"constructor","brief":"","examples":[{"caption":"","code":" // Create a new Button\n class PlayButton extends UITextButton {\n constructor(x,y) {\n super(x,y, {\n font: 'my-font',\n text: 'Play',\n // if you omit the next two, size is calculated by the size of the text\n borderWidth: 200,\n borderHeight: 20,\n backgroundColor: '#00aa0080',\n hoverColor: '#00ff00ff'\n });\n }\n\n onClick(){\n state.change(state.PLAY);\n }\n }\n\n world.addChild(new PlayButton(15,200));"}],"scope":"instance","type":"MethodDoc","description":"

                            A Bitmap Text Button with an outlined background border, filled with background color.\nIt uses a RoundRect as background a...","params":[{"identifier":"x","optional":false,"description":"

                            x pos of the button

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y pos of the button

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.font","optional":true,"description":"

                            The name of the BitmapText font to use

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.size","optional":true,"default":"1","description":"

                            The scale factor of the BitmapText

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.text","optional":true,"description":"

                            The text to display

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.bindKey","optional":true,"description":"

                            The key to bind the action to (default: none)

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.hoverOffColor","optional":true,"default":"\"#00aa0080\"","description":"

                            The css value of a color to be used if the pointer is not hovering over the button

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.hoverOnColor","optional":true,"default":"\"#00ff00ff\"","description":"

                            The css value of a color to be used if the pointer hovers over the button

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.borderStrokeColor","optional":true,"default":"\"#000000\"","description":"

                            The css value of a color to be used to draw the border

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.fillStyle","optional":true,"description":"

                            The css value of a tint color to be used to tint the BitmapText

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textAlign","optional":true,"default":"\"center\"","description":"

                            horizontal text alignment

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.textBaseline","optional":true,"default":"\"middle\"","description":"

                            the text baseline

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"settings.borderWidth","optional":true,"description":"

                            Width of the button

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"settings.borderHeight","optional":true,"description":"

                            Height of the button

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"jPmcufUl3UPXiSFeK5X3p","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                            Returns true if the rectangle contains the given point or rectangle

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point, or a rectangle to test

                            ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                            y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            True if the rectangle contain the given point or rectangle, otherwise false

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"vO43m_IHRIn8pHezT7_gJ","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            copy the position and size of the given rectangle into this one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            Source rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            new rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N_8Kd4HwTiLqWMcx8k__e","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance to the specified target

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            distance

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2eSBWR9gt5y0ejZDYmJu2","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is identical to the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if equals

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"V08J74x2HhM2AWe6Tk9ua","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                            flip the renderable on the horizontal axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ZnBT4EMBLlVv_ggk9-mZk","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                            flip the renderable on the vertical axis (around the center of the renderable)

                            ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                            true to flip this renderable.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"refnuyjF36XtJdm5JhRUF","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                            The forEach() method executes a provided function once per child element.
                            \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                            fnction to execute on each element

                            ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                            value to use as this(i.e reference Object) when executing callback.

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"4pAJqRCv1VU-xXyG1KJn-","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the renderable absolute position in the game world

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3cPyfgGMpnmpo4pVlbtap","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the bounding box for this renderable

                            ","params":[],"returns":[{"description":"

                            bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"FxqOboJVktZ5oFnaqGFWA","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the Child at the specified index

                            ","params":[{"identifier":"index","optional":false,"description":"

                            The index of the child

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            the child at the specified index

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sSHmEANNWq-LQVmDviix9","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the child corresponding to the specified GUID
                            \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                            child GUID

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            corresponding child or null

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vxlhz1Fnbau-Ck33dBJrz","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the list of childs with the specified name
                            \nas defined in Tiled (Name field of the Object Properties)
                            \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                            child name

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            Array of children

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Tvx40i_ahd04h2g9AY2_S","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                            return the child corresponding to the given property and value.
                            \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                            Property name

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                            Value of the property

                            ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                            Array of childs

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"dOAIa28hvycMLix84s1FX","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the list of childs with the specified class type

                            ","params":[{"identifier":"classType","optional":false,"description":"

                            Class type

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                            Array of children

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"9ctZNhdKHlypRRAbKfzIi","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the index of the given Child

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                            index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xACChW20GQN3AiHKQn24e","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return all child in this container

                            ","params":[],"returns":[{"description":"

                            an array of renderable object

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"coN4SRjnGuZZQ3ykBWEkE","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns a list of indices for all triangles defined in this polygon

                            ","params":[],"returns":[{"description":"

                            an array of vertex indices for all triangles forming this polygon.

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"adGVUuLFyZ188n-hjg7Qs","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the next child within the container or undefined if none

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                            child

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cW8582wxe28bol8hfUKDo","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the renderable alpha channel value

                            ","params":[],"returns":[{"description":"

                            current opacity value between 0 and 1

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"s3Ne3ajxye2sc0i9bM4W1","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the instance of the root container (i.e. the current application World container).

                            ","params":[],"returns":[{"description":"

                            root container

                            ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GINkeSvdfJ-GxiHkOMIna","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if contains the specified Child

                            ","params":[{"identifier":"child","optional":false,"description":"

                            The child object

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Pg0AfL_sNXRLn_OrM7yg2","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Checks if this container is root or if it's attached to the root container.

                            ","params":[],"returns":[{"description":"

                            true if this container is root or if it's attached to the root container

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"P1hhRKolO341ZHKgnybiZ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                            ","params":[],"returns":[{"description":"

                            true if the vertices are convex, false if not, null if not computable

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"9QOfzDe_Bsu-APBCFa1dU","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                            determines whether all coordinates of this rectangle are finite numbers.

                            ","params":[],"returns":[{"description":"

                            false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"VKeZ6TpqEugxt_CZYxJz7","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable towards the given target.

                            ","params":[{"identifier":"target","optional":false,"description":"

                            the renderable or position to look at

                            ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"bFHfx_gfZLM016naq6mp5","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the child in the group one step backward (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"jvWmImk77tI8SN35D7IFd","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the specified child the bottom (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"zXG_fml3pz2dPkK-urteE","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the specified child to the top(z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"uIE0alOPzeuERR1jUGWWQ","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Move the child in the group one step forward (z depth).

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be moved

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"4tbH0UoWJNFneUni47Jy8","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                            a callback to be extended, triggered after a child has been added or removed

                            ","params":[{"identifier":"index","optional":false,"description":"

                            added or removed child index

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"xkkJmQqciKjgsJe4IW7ls","name":"onClick","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed (to be extended)

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"kqMAJq-TiTaO4Ecz_woP-","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                            onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                            ","params":[{"identifier":"response","optional":false,"description":"

                            the collision response object

                            ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                            the other renderable touching this one (a reference to response.a or response.b)

                            ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                            true if the object should respond to the collision (its position and velocity will be corrected)

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"Wjv9nonH01ZTYC9DDxAld","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                            OnDestroy Notification function
                            \nCalled by engine before deleting the object

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"60ku_Lc2XpFr3f9zFNoms","name":"onHold","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and held
                            \nto be extended

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"pjJIxcMIZfoukr9JMpdQv","name":"onMove","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is moved over the object

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"UxyJCuxJrXN0UWadg1Ioh","name":"onOut","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is leaving the object area

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fLLdBS_Fw2PaonvA7IIIf","name":"onOver","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the pointer is over the object

                            ","params":[{"identifier":"event","optional":false,"description":"

                            the event object

                            ","dataType":{"tokens":[{"value":"Pointer","kind":"canonical"},{"value":"Pointer","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7X-KE4HZ40svAPCxvqWVq","name":"onRelease","brief":"","scope":"instance","type":"MethodDoc","description":"

                            function called when the object is pressed and released (to be extended)

                            ","params":[],"returns":[{"description":"

                            return false if we need to stop propagating the event

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"djrwGh23ydLrlpULHnBL5","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if this rectangle is intersecting with the specified one

                            ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"KTskqotQL4GaccJeoE5nS","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                            restore the rendering context after drawing (automatically called by melonJS).

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"jntzUCILW0aDqda0DWoWf","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                            Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer object

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"k6wA7BSZFNTJ1oeWKaVoS","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sEcQf2jim4oKXfGMucrO7","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be removed

                            ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                            true to prevent calling child.destroy()

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"UrE6sh-SAmazlD7PuFJpr","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Removes (and optionally destroys) a child from the container.
                            \n(removal is immediate and unconditional)
                            \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                            Child to be removed

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                            True to prevent calling child.destroy()

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"cM10ETBU13kpDQNBOMSNH","name":"reset","brief":"

                            reset the container, removing all childrens, and reseting transforms.

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"yvxfeCzlXacrJ780n7p3P","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resize the rectangle

                            ","params":[{"identifier":"w","optional":false,"description":"

                            new width of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            new height of the rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LFCegImjghKVvf2EsKwLd","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this renderable by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gG4_UvflOErPuwsB2OxH_","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                            a number representing the abscissa of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                            a number representing the ordinate of the scaling vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VgBIV5WFyuvMiNSUprXHU","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            scale the renderable around his anchor point

                            ","params":[{"identifier":"v","optional":false,"description":"

                            scaling vector

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"yJvpp3bK1XEpxp24BpZyH","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Automatically set the specified property of all childs to the given value

                            ","params":[{"identifier":"prop","optional":false,"description":"

                            property name

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                            property value

                            ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                            recursively apply the value to child containers if true

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"DsuapwOqF-H_gfG-P3pOn","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the renderable alpha channel value

                            ","params":[{"identifier":"alpha","optional":false,"description":"

                            opacity value between 0.0 and 1.0

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Ayf4edCjphbM5UdOzMY5K","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set new value to the rectangle shape

                            ","params":[{"identifier":"x","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            position of the Rectangle

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            width of the rectangle, or an array of vector defining the rectangle

                            ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                            height of the rectangle, if a numeral width parameter is specified

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            this rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"h6u6K9WZRJxYAH3MqIOW3","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the vertices defining this Polygon

                            ","params":[{"identifier":"vertices","optional":false,"description":"

                            array of vector or vertice defining the Polygon

                            ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                            this instance for objecf chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vklv6UXyNMPO2s6uqI4Qf","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            Shifts the Polygon to the given position vector.

                            ","params":[{"identifier":"x","description":"

                            x coordinate or a vector point to shift to

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mprKzIai_Yl_q1VLertN3","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Manually trigger the sort of all the childs in the container

                            ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                            recursively sort all containers if true

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"8Y5dZNP63h5LXd6JOCG56","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Swaps the position (z-index) of 2 children

                            ","params":[{"identifier":"child","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                            Child to be added

                            ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"XL2DIYoyRV6ez2ZKRIVjd","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply a 2d projection to this shapen

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jeEGEkwqTsHjDw43hBMfB","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            apply an isometric projection to this shape

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2LcBaQopGiNOkWLncVuJC","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns a polygon whose edges are the same as this box.

                            ","params":[],"returns":[{"description":"

                            a new Polygon that represents this rectangle.

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rw3CT8YVxAnRYoL1tmHxQ","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                            multiply the renderable currentTransform with the given matrix

                            ","params":[{"identifier":"m","optional":false,"description":"

                            the transformation matrix

                            ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VcBDQD4MZP9ZMu4ZvN4AD","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                            translate the Polygon by the specified offset

                            ","params":[{"identifier":"x","description":"

                            x offset or a vector point to translate by

                            ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                            y offset

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"mqNQ2EwQG2KSyhEbAzXJR","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                            merge this rectangle with another one

                            ","params":[{"identifier":"rect","optional":false,"description":"

                            other rectangle to union with

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            the union(ed) rectangle

                            ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2-USO0o-OmQdugh5WxvNF","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                            update the bounding box for this container.

                            ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                            update the bounds size and position in (world) absolute coordinates

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            this container bounding box Rectangle object

                            ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kTnfu1xDWZS-efnIt2CZ2","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            draw this renderable (automatically called by melonJS)

                            ","params":[{"identifier":"renderer","optional":false,"description":"

                            a renderer instance

                            ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                            the viewport to (re)draw

                            ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iMHjhCI17GQ1dF2bHL63l","name":"update","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                            container update function.
                            \nautomatically called by the application update loop {@link Application}

                            ","params":[{"identifier":"dt","optional":false,"description":"

                            time since the last update in milliseconds.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            true if the Container is dirty

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"P6bz0gjr2F9YJ1Z4RpXY3","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                            called when the anchor point value is changed

                            ","params":[{"identifier":"x","optional":false,"description":"

                            the new X value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            the new Y value to be set for the anchor

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"xFa3_HEpgFrdG8fnGOOvT","name":"Vector2d","brief":"","type":"ClassDoc","description":"

                            a generic 2D Vector Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"Jq2wHuzO_8nhEH5LK3h4m","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            x value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"HyRDLvNZyFGnO_PbM-WUm","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            y value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vLRgj0l-P14tamWOaslLk","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector values to absolute values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"X-gYQRtpdjnOX1WmthC6T","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add the passed vector to this vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fUKamGkFLROedNWgjfAVB","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle between this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Emd0cn00QH48Bbnctf5L4","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Ceil the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector2d

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VpDr1BJsoaj3vKeeHZC6t","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Ceil this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YOWrCZBj5aGmlvLzVFlwB","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Clamp the vector value within the specified value range

                            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            new me.Vector2d

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"63TUbutzmIgXo5bJg0Ptb","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Clamp this vector value within the specified value range

                            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zcXwabnXeLvTBe60hFzzG","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a clone copy of this vector

                            ","params":[],"returns":[{"description":"

                            new me.Vector2d

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fPPF0FKQgYQsHUU7ClFcO","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                            x value of the vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                            y value of the vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"fOI0piQRFBezmSjtfhrot","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Copy the x,y values of the passed vector to this one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GTauDVtB73jPLzmi2BGHt","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the cross product of this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            The cross product.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wnhLzZFtX1Yy8GQAllNLg","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance between this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7tutpL6FCm-NQO2GPvxNH","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Divide this vector values by the passed value

                            ","params":[{"identifier":"n","optional":false,"description":"

                            the value to divide the vector by

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6lxC-UXGUoGYUF9yKYX88","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the dot product of this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            The dot product.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"cBjMRm7hRpUTlgQqoV-yF","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if this vector is equal to the given values or vector

                            ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Vector2d | ObservableVector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"zLzQtJoqNzDjj_9ikRFp-","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Floor the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector2d

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nd3jfvHpc2pgBUV1e6b6i","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Floor this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YGRdytelcdgSifdPAhMob","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the length (magnitude) of this vector

                            ","params":[],"returns":[{"description":"

                            the length of this vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Fl3Gkw1fFTNi0SPCPknj5","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the square length of this vector

                            ","params":[],"returns":[{"description":"

                            The length^2 of this vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"8IGRNGRfncv2d1IRtQRII","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Linearly interpolate between this vector and the given one.

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

                            distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V7Os_efScvI394h01s-IR","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector with the maximum value between this and the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YJxwevgDAPs4wpt9zQqGx","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector with the minimum value between this and the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"PgTOFE4aMyPOWKsXdWk-c","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

                            interpolate the position of this vector towards the given one by the given maximum step.

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}},{"identifier":"step","optional":false,"description":"

                            the maximum step per iteration (Negative values will push the vector away from the target)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"si65urrUlPe3Bki9o0ekk","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Negate the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector2d

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SWSQsTGKZpuC6HBLrfVtk","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Negate this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"L8LBsZLrugROS2UuBmXCR","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            normalize this vector (scale the vector so that its magnitude is 1)

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7YIxoxlYjdGt-SJlKHEOa","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            change this vector to be perpendicular to what it was before.
                            \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3rAuMt6op0JD5kvYzwqCZ","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

                            project this vector on to another vector.

                            ","params":[{"identifier":"v","optional":false,"description":"

                            The vector to project onto.

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"I7ThVsc17XEtVOXD1WKwI","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Project this vector onto a vector of unit length.
                            \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

                            The unit vector to project onto.

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"aluEZS4ZoE-PUC_PEhIDs","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this vector (counter-clockwise) by the specified angle (in radians).

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jDAdTYy_XHiYXlkfdUzS4","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Multiply this vector values by the given scalar

                            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vsKVy6UfFUIuORIftO5ot","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Multiply this vector values by the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Nx0jOCLAxdq1yRQZ7kio8","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties to the given values

                            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"rY5j_j0sm5GwHQpIjm0No","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties using the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HrgQ8QrXlmoxTMaAELtd6","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties to 0

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vx9nAhVINW3bpLT2_3rb-","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Substract the passed vector to this vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"v9ehaNEc6wzishMTPlB_p","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Convert this vector into 2d coordinate space

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"SozRks2HSoyulP-OWIQts","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Convert this vector into isometric coordinate space

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4msRZo25FZU-uUI4JUqBY","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                            convert the object to a string representation

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"DMkpP-EBwrBBe-hn_tBs8","name":"Vector3d","brief":"","type":"ClassDoc","description":"

                            a generic 3D Vector Object

                            ","params":[],"returns":[],"extends":[],"implements":[],"members":[{"id":"MwLOArNsIUnme5SboIjUH","name":"x","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            x value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Rn3hoV4iKLP4s5o4x6NnO","name":"y","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            y value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"tdaKBBzZP_2gPFeSIZItC","name":"z","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            z value of the vector

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"BUi4p7bfOfaFk26KQbxSr","name":"abs","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector values to absolute values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V--2JWjxaYdufU5QbT14Z","name":"add","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Add the passed vector to this vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GxIeD4JvwY8AB1MIXec86","name":"angle","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the angle between this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Si-TXxU_-ITLmQiz8auFb","name":"ceil","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Ceil the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector3d

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wR3D_mYSlCkCGtpsrWbn4","name":"ceilSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Ceil this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"XBnBibX3BckcLB8qJICEC","name":"clamp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Clamp the vector value within the specified value range

                            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            new me.Vector3d

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"N5BiGvyZjXFq_SCpZ5M9l","name":"clampSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Clamp this vector value within the specified value range

                            ","params":[{"identifier":"low","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"high","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Ruzyc_9cUlHAX2LTENRXW","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a clone copy of this vector

                            ","params":[],"returns":[{"description":"

                            new me.Vector3d

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zSc2jYX6Yg0q05BU2FU7w","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                            x value of the vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                            y value of the vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","description":"

                            z value of the vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"w4WlQAmZopTsm4w83h1-F","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Copy the components of the given vector into this one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"M6gFS3YM7HbnxnBn8fItf","name":"cross","brief":"","scope":"instance","type":"MethodDoc","description":"

                            calculate the cross product of this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"xn-nrjKWZihJqcXiq8Drn","name":"distance","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the distance between this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7n0dkKhSCILfvvUl7rime","name":"div","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Divide this vector values by the passed value

                            ","params":[{"identifier":"n","optional":false,"description":"

                            the value to divide the vector by

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"fWjrsF2fCHgXUFg7ZkV1h","name":"dot","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the dot product of this vector and the passed one

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            The dot product.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"CCCCpKKTYxyP6hw22CmwJ","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return true if this vector is equal to the given values or vector

                            ","params":[{"identifier":"x","dataType":{"tokens":[{"value":"number | Vector2d | ObservableVector2d | Vector3d | ObservableVector3d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"},{"value":"Vector3d","kind":"link"},{"value":"ObservableVector3d","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"ffPWf9AwAP-8OsKbKyDuR","name":"floor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Floor the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector3d

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"L0foWScQgpcDmGLH0tt2M","name":"floorSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Floor this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NaHmSnOwk1PBS1Y6pt_Fg","name":"length","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the length (magnitude) of this vector

                            ","params":[],"returns":[{"description":"

                            the length of this vector

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"stX1pDbYRrJXLm_nVnIQd","name":"length2","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the square length of this vector

                            ","params":[],"returns":[{"description":"

                            The length^2 of this vector.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"zXwqrqXXPJ4drYueeDVx2","name":"lerp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Linearly interpolate between this vector and the given one.

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":false,"description":"

                            distance along the line (alpha = 0 will be this vector, and alpha = 1 will be the given one).

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"JqAtut9CvqWxSlo46Bkrd","name":"maxV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector with the maximum value between this and the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ARPIv1eNbUJqDPVGQU7_M","name":"minV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Update this vector with the minimum value between this and the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"lwvphk9Hhp7FlTmIDpMws","name":"moveTowards","brief":"","scope":"instance","type":"MethodDoc","description":"

                            interpolate the position of this vector on the x and y axis towards the given one by the given maximum step.

                            ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"step","optional":false,"description":"

                            the maximum step per iteration (Negative values will push the vector away from the target)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"USkh8fxUz9jUdfFtf8DEx","name":"negate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Negate the vector values

                            ","params":[],"returns":[{"description":"

                            new me.Vector3d

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"OzKPVmPKNvj30GAqeeSj7","name":"negateSelf","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Negate this vector values

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1nOJdg7TytcN0no7jEUYT","name":"normalize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            normalize this vector (scale the vector so that its magnitude is 1)

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"jKfEUtPsIAyPp3z2JQM3L","name":"perp","brief":"","scope":"instance","type":"MethodDoc","description":"

                            change this vector to be perpendicular to what it was before.
                            \n(Effectively rotates it 90 degrees in a clockwise direct...","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"nUEYHpUkc_ra6qZ8LsohF","name":"project","brief":"","scope":"instance","type":"MethodDoc","description":"

                            project this vector on to another vector.

                            ","params":[{"identifier":"v","optional":false,"description":"

                            The vector to project onto.

                            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"kPND2kEFVnPZt2RWKp-Fj","name":"projectN","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Project this vector onto a vector of unit length.
                            \nThis is slightly more efficient than project when deali...","params":[{"identifier":"v","optional":false,"description":"

                            The unit vector to project onto.

                            ","dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"E6OtoX3zN7Mt1X9-823Kp","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Rotate this vector (counter-clockwise) by the specified angle (in radians) around the z axis

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            The angle to rotate (in radians)

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                            an optional point to rotate around (on the same z axis)

                            ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ATj1HHebr_uGqyy45FY4F","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Multiply this vector values by the given scalar

                            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"1","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ney3I3eLv0UpsDe2OhtFG","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Multiply this vector values by the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"gXg11xihfXchin6sXch6-","name":"set","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties to the given values

                            ","params":[{"identifier":"x","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"z","optional":true,"default":"0","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"QTz7uQj7Ea2DK4-OZePqi","name":"setV","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties using the passed vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"4LDtoSARWBd8rVIUif1KY","name":"setZero","brief":"","scope":"instance","type":"MethodDoc","description":"

                            set the Vector x and y properties to 0

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"imp3btix6jviFDfx4EoL6","name":"sub","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Substract the passed vector to this vector

                            ","params":[{"identifier":"v","optional":false,"dataType":{"tokens":[{"value":"Vector2d | Vector3d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"_wZWCQGusenV0X2nTGXJJ","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Convert this vector into 2d coordinate space

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"g5RhbsRlZ7C0q1smLh-mh","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Convert this vector into isometric coordinate space

                            ","params":[],"returns":[{"description":"

                            Reference to this object for method chaining

                            ","dataType":{"tokens":[{"value":"Vector3d","kind":"canonical"},{"value":"Vector3d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1HchPM4E-FtVMvzGZ4M_q","name":"toString","brief":"","scope":"instance","type":"MethodDoc","description":"

                            convert the object to a string representation

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]}]},{"id":"DxwKNfVtxDgQ9sctAkp6W","name":"WebGLRenderer","brief":"","type":"ClassDoc","description":"

                            a WebGL renderer object

                            ","params":[],"returns":[],"extends":["Renderer"],"implements":[],"members":[{"id":"c8aQlpcCZhOoq6VQt8f7V","name":"compositors","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The list of active compositors

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"snReTPa4f5VcorkaWQufT","name":"currentCompositor","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The current compositor used by the renderer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"N0jEyP1OJaCczJtV1I6lh","name":"currentProgram","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            a reference to the current shader program used by the renderer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lAyPfmLo-db9Ho4jrbZkj","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The current transformation matrix used for transformations on the overall scene

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OuxgVa6tuQLvdUPZ6L-IH","name":"depthTest","brief":"","defaultValue":"\"sorting\"","scope":"instance","type":"PropertyDoc","description":"

                            the default method to sort object ("sorting", "z-buffer")

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q-0V9x7Y7T9WooOLFMyG_","name":"designRatio","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            the requested video size ratio

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zMGISoPCazQshLrfRdnZA","name":"gl","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The WebGL context

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"8Wt5eOE6RHFfgr5kgp4D5","name":"GPURenderer","brief":"","defaultValue":"undefined","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                            The renderer string of the underlying graphics driver.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"dDgFQPrW9mB4mGbr2BDRZ","name":"GPUVendor","brief":"","defaultValue":"undefined","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                            The vendor string of the underlying graphics driver.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"vFHZfTBCCNd_53PByzR5C","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            return the height of the canvas which this renderer draws to

                            ","params":[],"returns":[{"description":"

                            height of the system Canvas

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6R2mZLHE3UqEQEeYbgTw7","name":"isContextValid","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                            true if the current rendering context is valid

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"hehop7cOUpWyVLworIYnT","name":"maxTextures","brief":"","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                            Maximum number of texture unit supported under the current context

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"idz7fDk_cQFZq_6uZayr3","name":"path2D","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            The Path2D instance used by the renderer to draw primitives

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6wCgUotiOXMyWPGqYns4y","name":"scaleRatio","brief":"","defaultValue":"<1,1>","scope":"instance","type":"PropertyDoc","description":"

                            the scaling ratio to be applied to the main canvas

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VES72Mm2fnYZrTD0tjSZw","name":"settings","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                            The given constructor options

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ry-2JgSDjNET9hq3B5Aak","name":"type","brief":"","defaultValue":"\"Generic\"","scope":"instance","type":"PropertyDoc","description":"

                            The renderer type : Canvas, WebGL, etc...\n(override this property with a specific value when implementing a custom rendere...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"RJS0kDsKOQx81Ax_BNcoI","name":"vertexBuffer","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            the vertex buffer used by this WebGL Renderer

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"08HSo-BLU6nuMPjjalCWW","name":"WebGLVersion","brief":"","defaultValue":"1","readonly":true,"scope":"instance","type":"PropertyDoc","description":"

                            The WebGL version used by this renderer (1 or 2)

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"YCze4G5548RTPeaLJPYIy","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                            return the width of the canvas which this renderer draws to

                            ","params":[],"returns":[{"description":"

                            width of the system Canvas

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"d__6bXS_LNm6iIl2pxK1X","name":"addCompositor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            add a new compositor to this renderer

                            ","params":[{"identifier":"compositor","optional":false,"description":"

                            a compositor instance

                            ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}},{"identifier":"name","optional":false,"default":"\"default\"","description":"

                            a name uniquely identifying this compositor

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"activate","optional":true,"default":"false","description":"

                            true if the given compositor should be set as the active one

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"WBIkMirmRTqnm6BHIMjZC","name":"beginPath","brief":"","examples":[{"caption":"","code":"// First path\nrenderer.beginPath();\nrenderer.setColor(\"blue\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(200, 20);\nrenderer.stroke();\n// Second path\nrenderer.beginPath();\nrenderer.setColor(\"green\");\nrenderer.moveTo(20, 20);\nrenderer.lineTo(120, 120);\nrenderer.stroke();"}],"scope":"instance","type":"MethodDoc","description":"

                            starts a new path by emptying the list of sub-paths. Call this method when you want to create a new path

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"cJ2DjOp3YbS4ZVYCboKOg","name":"clear","brief":"

                            Clear the frame buffer

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZjUH1l1CNZGW3DNX4oAr7","name":"clearColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Clears the gl context with the given color.

                            ","params":[{"identifier":"color","optional":true,"default":"\"#000000\"","description":"

                            CSS color.

                            ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"opaque","optional":true,"default":"false","description":"

                            Allow transparency [default] or clear the surface completely [true]

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"dDWJVESWJB_4HZLMJuIOW","name":"clearMask","brief":"","scope":"instance","see":["WebGLRenderer#setMask"],"type":"MethodDoc","description":"

                            disable (remove) the rendering mask set through setMask.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6nSsQxotrsSuoKsndtte4","name":"clearRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Erase the pixels in the given rectangular area by setting them to transparent black (rgba(0,0,0,0)).

                            ","params":[{"identifier":"x","optional":false,"description":"

                            x axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            The rectangle's width.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            The rectangle's height.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"bsxVXBWTjlETRKaSoO164","name":"clearTint","brief":"","scope":"instance","see":["Renderer#setTint"],"type":"MethodDoc","description":"

                            clear the rendering tint set through setTint.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sfOLiTNpEJ6xc-cg7G4h_","name":"clipRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            clip the given region from the original canvas. Once a region is clipped,\nall future drawing will be limited to the clippe...","params":[{"identifier":"x","optional":false,"description":"

                            x axis of the coordinate for the upper-left corner of the rectangle to start clipping from.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y axis of the coordinate for the upper-left corner of the rectangle to start clipping from.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            the width of the rectangle to start clipping from.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            the height of the rectangle to start clipping from.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"lqOTglNuu4a8MoB9uh3A6","name":"closePath","brief":"

                            add a straight line from the current point to the start of the current sub-path. If the shape has already been closed or has only one point, this function does nothing

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rEByRJNPCvHKO0HcZTw51","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"options","optional":true,"description":"

                            optional parameters for the renderer

                            ","dataType":{"tokens":[{"value":"Application.Settings","kind":"canonical"},{"value":"Application.Settings","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"iQQaoyZ1Pj8J8Y7wd1rIs","name":"createPattern","brief":"","examples":[{"caption":"","code":"let tileable = renderer.createPattern(image, \"repeat\");\nlet horizontal = renderer.createPattern(image, \"repeat-x\");\nlet vertical = renderer.createPattern(image, \"repeat-y\");\nlet basic = renderer.createPattern(image, \"no-repeat\");"}],"scope":"instance","see":["ImageLayer#repeat"],"type":"MethodDoc","description":"

                            Create a pattern with the specified repetition

                            ","params":[{"identifier":"image","optional":false,"description":"

                            Source image to be used as the pattern's image

                            ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"repeat","optional":false,"description":"

                            Define how the pattern should be repeated

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                            the patterned texture created

                            ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"R7AJEKfajhNsyXcQPY7VR","name":"drawImage","brief":"","examples":[{"caption":"","code":"// Position the image on the canvas:\nrenderer.drawImage(image, dx, dy);\n// Position the image on the canvas, and specify width and height of the image:\nrenderer.drawImage(image, dx, dy, dWidth, dHeight);\n// Clip the image and position the clipped part on the canvas:\nrenderer.drawImage(image, sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight);"}],"scope":"instance","type":"MethodDoc","description":"

                            Draw an image to the gl context

                            ","params":[{"identifier":"image","optional":false,"description":"

                            An element to draw into the context.

                            ","dataType":{"tokens":[{"value":"HTMLImageElement | SVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"SVGImageElement","kind":"canonical"},{"value":"HTMLVideoElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"ImageBitmap","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"},{"value":"VideoFrame","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7"}},{"identifier":"sx","optional":false,"description":"

                            The X coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sy","optional":false,"description":"

                            The Y coordinate of the top left corner of the sub-rectangle of the source image to draw into the destination context.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sw","optional":false,"description":"

                            The width of the sub-rectangle of the source image to draw into the destination context. If not specified, the entire rect...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"sh","optional":false,"description":"

                            The height of the sub-rectangle of the source image to draw into the destination context.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dx","optional":false,"description":"

                            The X coordinate in the destination canvas at which to place the top-left corner of the source image.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dy","optional":false,"description":"

                            The Y coordinate in the destination canvas at which to place the top-left corner of the source image.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dw","optional":false,"description":"

                            The width to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the image...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"dh","optional":false,"description":"

                            The height to draw the image in the destination canvas. This allows scaling of the drawn image. If not specified, the imag...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"omIX51IE_DN6Kg93T84qs","name":"drawPattern","brief":"","scope":"instance","see":["WebGLRenderer#createPattern"],"type":"MethodDoc","description":"

                            Draw a pattern within the given rectangle.

                            ","params":[{"identifier":"pattern","optional":false,"description":"

                            Pattern object

                            ","dataType":{"tokens":[{"value":"TextureAtlas","kind":"canonical"},{"value":"TextureAtlas","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                            x position where to draw the pattern

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y position where to draw the pattern

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            width of the pattern

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            height of the pattern

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"mma4cmlYGazo0kgYiAfPv","name":"fill","brief":"","scope":"instance","type":"MethodDoc","description":"

                            fill the given shape or the current defined path

                            ","params":[{"identifier":"shape","optional":true,"description":"

                            a shape object to fill

                            ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[],"extends":[],"implements":[]},{"id":"glGPnE4JiYXhSb3cxpjeu","name":"fillArc","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Fill an arc at the specified coordinates with given radius, start and end points

                            ","params":[{"identifier":"x","optional":false,"description":"

                            arc center point x-axis

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            arc center point y-axis

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                            arc radius

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

                            start angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

                            end angle in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

                            draw arc anti-clockwise

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"50Yge497eHF4UavXhEFow","name":"fillEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Fill an ellipse at the specified coordinates with given radius

                            ","params":[{"identifier":"x","optional":false,"description":"

                            ellipse center point x-axis

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            ellipse center point y-axis

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                            horizontal radius of the ellipse

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                            vertical radius of the ellipse

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"zI2aK5y38nt-y2JaMiwWj","name":"fillLine","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Fill a line of the given two points

                            ","params":[{"identifier":"startX","optional":false,"description":"

                            the start x coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

                            the start y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

                            the end x coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

                            the end y coordinate

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"U6CS83SJTJBnAgm9B8mlI","name":"fillPoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Draw a a point at the specified coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            x axis of the coordinate for the point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y axis of the coordinate for the point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7fJVjvf7vvWGJK0tvavyb","name":"fillPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Fill a me.Polygon on the screen

                            ","params":[{"identifier":"poly","optional":false,"description":"

                            the shape to draw

                            ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"8G0s0SX8VRfnehy5E9I3c","name":"fillRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Draw a filled rectangle at the specified coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            x axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            The rectangle's width.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            The rectangle's height.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VcL2HbrmBh47AjsJh7XW6","name":"fillRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Draw a rounded filled rectangle at the specified coordinates

                            ","params":[{"identifier":"x","optional":false,"description":"

                            x axis of the coordinate for the rounded rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            y axis of the coordinate for the rounded rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            The rounded rectangle's width.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            The rounded rectangle's height.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                            The rounded corner's radius.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qOXTthgNsnnNK4W51-_VL","name":"flush","brief":"

                            Flush the compositor to the frame buffer

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CIpIsSThUCigdCquav6Pf","name":"getBlendMode","brief":"","scope":"instance","type":"MethodDoc","description":"

                            returns the current blend mode for this renderer

                            ","params":[],"returns":[{"description":"

                            blend mode

                            ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"extends":[],"implements":[]},{"id":"bR3SkO5gKtf1E6nVFhANB","name":"getCanvas","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return a reference to the canvas which this renderer draws to

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pk9GTq4msPcGF80ky8obL","name":"getColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                            get the current fill & stroke style color.

                            ","params":[],"returns":[{"description":"

                            current global color

                            ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LgJF8MWttLmJ5YPQ5JpfL","name":"getContext","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the WebGLContext instance for the renderer\nreturn a reference to the system 2d Context

                            ","params":[],"returns":[{"description":"

                            the current WebGL context

                            ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"BYW1RDKTvTw9M66DO4FEM","name":"getContext2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the 2D Context object of the given Canvas
                            \nAlso configures anti-aliasing and blend modes based on constructor o...","params":[{"identifier":"canvas","optional":false,"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"true","description":"

                            use false to disable transparency

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"V3oasIAgA5vELAyewSFUH","name":"getContextGL","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Returns the WebGL Context object of the given canvas element

                            ","params":[{"identifier":"canvas","optional":false,"description":"

                            the canvas element

                            ","dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}},{"identifier":"transparent","optional":true,"default":"false","description":"

                            use true to enable transparency

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"depth","optional":true,"default":"false","description":"

                            use true to enable depth buffer testing

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                            the WebGL Context object

                            ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"NQP0rDHLa6SIwY9U1OTTz","name":"getGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                            Return the global alpha

                            ","params":[],"returns":[{"description":"

                            global alpha value

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VowUy-CtnVXSLh5xfF6oa","name":"getScreenCanvas","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getCanvas();"],"type":"MethodDoc","description":"

                            return a reference to the screen canvas

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ms4i5aEdLAFKHbsKaIsHp","name":"getScreenContext","brief":"","deprecated":"since 13.1.0","scope":"instance","see":["getContext();"],"type":"MethodDoc","description":"

                            return a reference to the screen canvas corresponding 2d Context
                            \n(will return buffered context if double buffering is ...","params":[],"returns":[{"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"09ZYBFqjwLwW3CAbzUmEK","name":"globalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                            return the current global alpha

                            ","params":[],"returns":[{"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"vo-E-tFT31zulWoi9ozXr","name":"lineTo","brief":"

                            adds a straight line to the current sub-path by connecting the sub-path's last point to the specified (x, y) coordinates.

                            ","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":false},{"identifier":"y","optional":false}],"returns":[],"extends":[],"implements":[]},{"id":"x6O6UnlqmZiJ1eiYJcESJ","name":"moveTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                            begins a new sub-path at the point specified by the given (x, y) coordinates.

                            ","params":[{"identifier":"x","optional":false,"description":"

                            The x axis of the point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            The y axis of the point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"KjeQgipyrya59wDUvDw9m","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                            check if the given rect or bounds overlaps with the renderer screen coordinates

                            ","params":[{"identifier":"bounds","optional":false,"dataType":{"tokens":[{"value":"Rect | Bounds","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"Bounds","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                            true if overlaps

                            ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"UOsZFcyXg2KSAYHG_0jMt","name":"rect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            creates a rectangular path whose starting point is at (x, y) and whose size is specified by width and height.

                            ","params":[{"identifier":"x","optional":false,"description":"

                            The x axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            The y axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            The rectangle's width.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            The rectangle's height.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"r44DM4Q0h2flqXGSZoK7b","name":"reset","brief":"

                            Reset context state

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sj5J9shWlYxiPjioBgGEc","name":"resetTransform","brief":"

                            Reset the gl transform to identity

                            ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"n37D3n_GeIHmsV3m8ePYN","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                            resizes the system canvas

                            ","params":[{"identifier":"width","optional":false,"description":"

                            new width of the canvas

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            new height of the canvas

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_JjN_4MYG9ienKt_ZkJWc","name":"restore","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

                            restores the most recently saved renderer state by popping the top entry in the drawing state stack

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"GHSO425A0WcrHSqQkojLe","name":"rotate","brief":"","examples":[{"caption":"","code":" // Rotated rectangle\n renderer.rotate((45 * Math.PI) / 180);\n renderer.setColor(\"red\");\n renderer.fillRect(10, 10, 100, 100);\n\n // Reset transformation matrix to the identity matrix\n renderer.setTransform(1, 0, 0, 1, 0, 0);"}],"scope":"instance","type":"MethodDoc","description":"

                            adds a rotation to the transformation matrix.

                            ","params":[{"identifier":"angle","optional":false,"description":"

                            the rotation angle, clockwise in radians

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"OgXtd76ZWJcbGZeu63mlN","name":"roundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                            adds a rounded rectangle to the current path.

                            ","params":[{"identifier":"x","optional":false,"description":"

                            The x axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            The y axis of the coordinate for the rectangle starting point.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                            The rectangle's width.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                            The rectangle's height.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                            The corner radius.

                            ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"VVhRzjDOqgnbH0AUOvz1j","name":"save","brief":"","examples":[{"caption":"","code":" // Save the current state\n renderer.save();\n\n // apply a transform and draw a rect\n renderer.tranform(matrix);\n renderer.fillRect(10, 10, 100, 100);\n\n // Restore to the state saved by the most recent call to save()\n renderer.restore();"}],"scope":"instance","type":"MethodDoc","description":"

                            saves the entire state of the renderer by pushing the current state onto a stack.

                            ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-MRswbFy35AtxZj2sMzhW","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                            adds a scaling transformation to the renderer units horizontally and/or vertically

                            ","params":[{"identifier":"x","optional":false,"description":"

                            Scaling factor in the horizontal direction. A negative value flips pixels across the vertical axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                            Scaling factor in the vertical direction. A negative value flips pixels across the horizontal axis. A value of 1 results i...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"vqM11lCVfle15Gq4HH8Zm","name":"setAntiAlias","brief":"","scope":"instance","type":"MethodDoc","description":"

                            enable/disable image smoothing (scaling interpolation) for the given context

                            ","params":[{"identifier":"context","optional":false,"dataType":{"tokens":[{"value":"CanvasRenderingContext2D","kind":"canonical"},{"value":"CanvasRenderingContext2D","kind":"canonical"}],"template":"%1"}},{"identifier":"enable","optional":true,"default":"false","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"w1gKSK2154KhAMjjyZSsG","name":"setBlendMode","brief":"","scope":"instance","see":["https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation"],"type":"MethodDoc","description":"

                            set a blend mode for the given context.
                            \nSupported blend mode between Canvas and WebGL remderer :

                            \n
                              \n
                            • &q...","params":[{"identifier":"mode","optional":true,"default":"\"normal\"","description":"

                              blend mode : "normal", "multiply", "lighter", "additive", "screen"

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"gl","optional":true,"description":"

                              a WebGL context

                              ","dataType":{"tokens":[{"value":"WebGLRenderingContext","kind":"canonical"},{"value":"WebGLRenderingContext","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Oxa86yr3HA-LiIfS2iusq","name":"setColor","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Set the current fill & stroke style color.\nBy default, or upon reset, the value is set to #000000.

                              ","params":[{"identifier":"color","optional":false,"description":"

                              css color string.

                              ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}}],"returns":[],"extends":[],"implements":[]},{"id":"9mlFhhWoJXcFI-_kOZphk","name":"setCompositor","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set the active compositor for this renderer

                              ","params":[{"identifier":"name","optional":false,"default":"\"default\"","description":"

                              a compositor name

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"shader","optional":true,"description":"

                              an optional shader program to be used, instead of the default one, when activating the compositor

                              ","dataType":{"tokens":[{"value":"GLShader","kind":"canonical"},{"value":"GLShader","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              an instance to the current active compositor

                              ","dataType":{"tokens":[{"value":"Compositor","kind":"canonical"},{"value":"Compositor","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"Se5zandkRAcafKCP0wMFM","name":"setGlobalAlpha","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Set the global alpha

                              ","params":[{"identifier":"alpha","optional":false,"description":"

                              0.0 to 1.0 values accepted.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"4ZZTL5vnqS8cXvJyjmNOO","name":"setLineWidth","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Set the line width

                              ","params":[{"identifier":"width","optional":false,"description":"

                              Line width

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"wQZOyDoWr6z-XZelHPzu_","name":"setMask","brief":"","scope":"instance","see":["CanvasRenderer#clearMask"],"type":"MethodDoc","description":"

                              A mask limits rendering elements to the shape and position of the given mask object.\nIf the drawing or rendering area is l...","params":[{"identifier":"mask","optional":true,"description":"

                              a shape defining the mask to be applied

                              ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"invert","optional":true,"default":"false","description":"

                              either the given shape should define what is visible (default) or the opposite

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"CviekWdNHPLHveXdxppCw","name":"setProjection","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set/change the current projection matrix (WebGL only)

                              ","params":[{"identifier":"matrix","optional":false,"description":"

                              the new projection matrix

                              ","dataType":{"tokens":[{"value":"Matrix3d","kind":"canonical"},{"value":"Matrix3d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"qeoJzezsiIcqE7Sifr9df","name":"setTint","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set a coloring tint for sprite based renderables

                              ","params":[{"identifier":"tint","optional":false,"description":"

                              the tint color

                              ","dataType":{"tokens":[{"value":"Color","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1"}},{"identifier":"alpha","optional":true,"description":"

                              an alpha value to be applied to the tint

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"j_1l55nXvswfWXC_Hv22t","name":"setTransform","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Reset (overrides) the renderer transformation matrix to the\nidentity one, and then apply the given transformation matrix.

                              ","params":[{"identifier":"a","optional":false,"description":"

                              a matrix2d to transform by, or a the a component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                              the b component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                              the c component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                              the d component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                              the e component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                              the f component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"D_aK9O_rsXGQtR8vWQfVQ","name":"setViewport","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Sets the WebGL viewport, which specifies the affine transformation of x and y from normalized device coordinates to window...","params":[{"identifier":"x ","optional":true,"default":" 0","description":"

                              x the horizontal coordinate for the lower left corner of the viewport origin

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y ","optional":true,"default":" 0","description":"

                              y the vertical coordinate for the lower left corner of the viewport origin

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w ","optional":true,"default":" width of the canvas","description":"

                              the width of viewport

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h ","optional":true,"default":" height of the canvas","description":"

                              the height of viewport

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"P2RfEw9Koy1Q5fjsj7BQd","name":"stroke","brief":"","scope":"instance","type":"MethodDoc","description":"

                              stroke the given shape or the current defined path

                              ","params":[{"identifier":"shape","optional":true,"description":"

                              a shape object to stroke

                              ","dataType":{"tokens":[{"value":"Rect | RoundRect | Polygon | Line | Ellipse","kind":"canonical"},{"value":"Rect","kind":"link"},{"value":"RoundRect","kind":"link"},{"value":"Polygon","kind":"link"},{"value":"Line","kind":"link"},{"value":"Ellipse","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ui8Sv3K5TQD0CX0BGpfY5","name":"strokeArc","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke an arc at the specified coordinates with given radius, start and end points

                              ","params":[{"identifier":"x","optional":false,"description":"

                              arc center point x-axis

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              arc center point y-axis

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                              arc radius

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"start","optional":false,"description":"

                              start angle in radians

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"end","optional":false,"description":"

                              end angle in radians

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"antiClockwise","optional":true,"default":"false","description":"

                              draw arc anti-clockwise

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              also fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"MKg88aNqenb1n8Kvog7d4","name":"strokeEllipse","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke an ellipse at the specified coordinates with given radius

                              ","params":[{"identifier":"x","optional":false,"description":"

                              ellipse center point x-axis

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              ellipse center point y-axis

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                              horizontal radius of the ellipse

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                              vertical radius of the ellipse

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              also fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"dXc8Nm8GmHEUOzrs7Uzds","name":"strokeLine","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke a line of the given two points

                              ","params":[{"identifier":"startX","optional":false,"description":"

                              the start x coordinate

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"startY","optional":false,"description":"

                              the start y coordinate

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endX","optional":false,"description":"

                              the end x coordinate

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"endY","optional":false,"description":"

                              the end y coordinate

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"Dbs5ochRBnleK1kpv70sL","name":"strokePoint","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke a Point at the specified coordinates

                              ","params":[{"identifier":"x","optional":false,"description":"

                              x axis of the coordinate for the point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              y axis of the coordinate for the point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"cW-z9mtYVfV-3HsY53SEf","name":"strokePolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke a me.Polygon on the screen with a specified color

                              ","params":[{"identifier":"poly","optional":false,"description":"

                              the shape to draw

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              also fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"UrCkZwCK1i-9dcIZn7_Pl","name":"strokeRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Draw a stroke rectangle at the specified coordinates

                              ","params":[{"identifier":"x","optional":false,"description":"

                              x axis of the coordinate for the rectangle starting point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              y axis of the coordinate for the rectangle starting point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                              The rectangle's width.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                              The rectangle's height.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              also fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"mF_LRAbNU5q-VheqkH1Nh","name":"strokeRoundRect","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Stroke a rounded rectangle at the specified coordinates

                              ","params":[{"identifier":"x","optional":false,"description":"

                              x axis of the coordinate for the rounded rectangle starting point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              y axis of the coordinate for the rounded rectangle starting point.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":false,"description":"

                              The rounded rectangle's width.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":false,"description":"

                              The rounded rectangle's height.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"radius","optional":false,"description":"

                              The rounded corner's radius.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"fill","optional":true,"default":"false","description":"

                              also fill the shape with the current color if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZJqrcXMM2BwOtdcY4vKL9","name":"tint","brief":"","scope":"instance","type":"MethodDoc","description":"

                              tint the given image or canvas using the given color

                              ","params":[{"identifier":"src","optional":false,"description":"

                              the source image to be tinted

                              ","dataType":{"tokens":[{"value":"HTMLImageElement | HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLImageElement","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2 | %3"}},{"identifier":"color","optional":false,"description":"

                              the color that will be used to tint the image

                              ","dataType":{"tokens":[{"value":"Color | string","kind":"canonical"},{"value":"Color","kind":"link"}],"template":"%1 | string"}},{"identifier":"mode","optional":true,"default":"\"multiply\"","description":"

                              the composition mode used to tint the image

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[{"description":"

                              a new canvas element representing the tinted image

                              ","dataType":{"tokens":[{"value":"HTMLCanvasElement | OffscreenCanvas","kind":"canonical"},{"value":"HTMLCanvasElement","kind":"canonical"},{"value":"OffscreenCanvas","kind":"canonical"}],"template":"%1 | %2"}}],"extends":[],"implements":[]},{"id":"YPB0oDKRxX28WThekSMlj","name":"toBlob","brief":"","examples":[{"caption":"","code":"renderer.convertToBlob().then((blob) => console.log(blob));"}],"scope":"instance","type":"MethodDoc","description":"

                              creates a Blob object representing the last rendered frame

                              ","params":[{"identifier":"options","optional":true,"description":"

                              An object with the following properties:

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                              A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              A Promise returning a Blob object representing the last rendered frame

                              ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"F4jb9NzQGj7o7vVQ8eDWJ","name":"toDataURL","brief":"","examples":[{"caption":"","code":"renderer.toDataURL().then((dataURL) => console.log(dataURL));"}],"scope":"instance","type":"MethodDoc","description":"

                              returns a data URL containing a representation of the last frame rendered

                              ","params":[{"identifier":"options","optional":true,"description":"

                              An object with the following properties:

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                              A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              A Promise returning a string containing the requested data URL.

                              ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YuTnTVRHpQY9BCouKIiYg","name":"toImageBitmap","brief":"","examples":[{"caption":"","code":"renderer.transferToImageBitmap().then((image) => console.log(image));"}],"scope":"instance","type":"MethodDoc","description":"

                              creates an ImageBitmap object of the last frame rendered\n(not supported by standard Canvas)

                              ","params":[{"identifier":"options","optional":true,"description":"

                              An object with the following properties:

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"options.type","optional":true,"default":"\"image/png\"","description":"

                              A string indicating the image format

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"options.quality","optional":true,"description":"

                              A Number between 0 and 1 indicating the image quality to be used when creating images using file formats that support loss...","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              A Promise returning an ImageBitmap.

                              ","dataType":{"tokens":[{"value":"Promise","kind":"canonical"},{"value":"Promise","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"EBqy_LjTN2zqtsQJ_yGTl","name":"transform","brief":"","scope":"instance","see":["{@link WebGLRenderer.setTransform} which will reset the current transform matrix prior to performing the new transformation"],"type":"MethodDoc","description":"

                              Multiply given matrix into the renderer tranformation matrix

                              ","params":[{"identifier":"a","optional":false,"description":"

                              a matrix2d to transform by, or a the a component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"Matrix2d | number","kind":"canonical"},{"value":"Matrix2d","kind":"link"},{"value":"number","kind":"canonical"}],"template":"%1 | %2"}},{"identifier":"b","optional":false,"description":"

                              the b component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"c","optional":false,"description":"

                              the c component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"d","optional":false,"description":"

                              the d component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"e","optional":false,"description":"

                              the e component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"f","optional":false,"description":"

                              the f component to multiply the current matrix by

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"op_6YsZjRak7vpaEYSrXD","name":"translate","brief":"","scope":"instance","type":"MethodDoc","description":"

                              adds a translation transformation to the current matrix.

                              ","params":[{"identifier":"x","optional":false,"description":"

                              Distance to move in the horizontal direction. Positive values are to the right, and negative to the left.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              Distance to move in the vertical direction. Positive values are down, and negative are up.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"zPTCd1Ey2XH3WWVHn4py0","name":"World","brief":"","type":"ClassDoc","description":"

                              an object representing the physic world, and responsible for managing and updating all childs and physics

                              ","params":[],"returns":[],"extends":["Container"],"implements":[],"members":[{"id":"o9aH_e3YZw1Fdf_k1-WtP","name":"alpha","brief":"","defaultValue":"1.0","scope":"instance","see":["Renderable#setOpacity","Renderable#getOpacity"],"type":"PropertyDoc","description":"

                              Define the renderable opacity
                              \nSet to zero if you do not wish an object to be drawn

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"ZRz64pbTXvqPKfJlF8p0R","name":"alwaysUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Whether the renderable object will always update, even when outside of the viewport

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"NMcrX-7pLx7XbJ7hthQZw","name":"ancestor","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                              a reference to the parent object that contains this renderable

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XF7-gkkb0YLVwlm7Z8hpZ","name":"anchorPoint","brief":"","defaultValue":"<0.5,0.5>","scope":"instance","type":"PropertyDoc","description":"

                              The anchor point is used for attachment behavior, and/or when applying transformations.
                              \nThe coordinate system places t...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TjZpzsBKusFa22_-YXsox","name":"app","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the application (game) this physic world belong to

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"QrhXAlaZA4mQdx-lpaptx","name":"autoDepth","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                              Specify if the children z index should automatically be managed by the parent container

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"XKRD0uUoWt7PEV4c0iYPy","name":"autoSort","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                              Specify if the children list should be automatically sorted when adding a new child

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3W2hdZejQSETvNNlVCIjI","name":"autoTransform","brief":"","defaultValue":"true","examples":[{"caption":"","code":"// enable \"automatic\" transformation when the object is activated\nonActivateEvent: function () {\n // reset the transformation matrix\n this.currentTransform.identity();\n // ensure the anchor point is the renderable center\n this.anchorPoint.set(0.5, 0.5);\n // enable auto transform\n this.autoTransform = true;\n ....\n}"}],"scope":"instance","type":"PropertyDoc","description":"

                              When enabled, an object container will automatically apply\nany defined transformation before calling the child draw method...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"o-gQ9yfVJ5cn70Nd4vvup","name":"backgroundColor","brief":"","defaultValue":"(0, 0, 0, 0.0)","examples":[{"caption":"","code":"// add a red background color to this container\nthis.backgroundColor.setColor(255, 0, 0);"}],"scope":"instance","type":"PropertyDoc","description":"

                              define a background color for this container

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FX8FPF3mirNietZ9gF_YM","name":"blendMode","brief":"","defaultValue":"\"normal\"","scope":"instance","see":["CanvasRenderer#setBlendMode","WebGLRenderer#setBlendMode"],"type":"PropertyDoc","description":"

                              the blend mode to be applied to this renderable (see renderer setBlendMode for available blend mode)

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"rCrRUc7WshTysiN7MoUrL","name":"bodies","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the active physic bodies in this simulation

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"KAimhxCuMWVQO6NaVrKk7","name":"body","brief":"","examples":[{"caption":"","code":" // define a new Player Class\n class PlayerEntity extends me.Sprite {\n // constructor\n constructor(x, y, settings) {\n // call the parent constructor\n super(x, y , settings);\n\n // define a basic walking animation\n this.addAnimation(\"walk\", [...]);\n // define a standing animation (using the first frame)\n this.addAnimation(\"stand\", [...]);\n // set the standing animation as default\n this.setCurrentAnimation(\"stand\");\n\n // add a physic body\n this.body = new me.Body(this);\n // add a default collision shape\n this.body.addShape(new me.Rect(0, 0, this.width, this.height));\n // configure max speed, friction, and initial force to be applied\n this.body.setMaxVelocity(3, 15);\n this.body.setFriction(0.4, 0);\n this.body.force.set(3, 0);\n this.isKinematic = false;\n\n // set the display to follow our position on both axis\n me.game.viewport.follow(this.pos, me.game.viewport.AXIS.BOTH);\n }\n\n ...\n\n }"}],"scope":"instance","type":"PropertyDoc","description":"

                              the renderable physic body

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"czTpr_mnnp-AmLl_FYd7-","name":"bottom","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              bottom coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"-fGllhEK3pyYHOMYxWSIp","name":"broadphase","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the instance of the game world quadtree used for broadphase (used by the builtin physic and pointer event implementation)

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i4m8SVQH_w_bvOEtxw4nL","name":"centerX","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              absolute center of this rectangle on the horizontal axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"veh_3JK_9CEgFP3dD0Dwv","name":"centerY","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              absolute center of this rectangle on the vertical axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"afLp6KExfI-fRvgu4zdwa","name":"clipping","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Specify if the container draw operation should clip his children to its own bounds

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6I8P3A6LPNPcPpEI2uP4w","name":"currentTransform","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the renderable default transformation matrix

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S-M30bail1RIaxzV2GijR","name":"depth","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the depth of this renderable on the z axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lEF-dqOyHwvGnN70SZSCq","name":"detector","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              the collision detector instance used by this world instance

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6vYpjWqaanPR4zDfXW1MZ","name":"enableChildBoundsUpdate","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Specify if the container bounds should automatically take in account\nall child bounds when updated (this is expensive and ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zduQtTaGKslcc3mpKv4C-","name":"floating","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              If true, this renderable will be rendered using screen coordinates,\nas opposed to world coordinates. Use this, for example...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aHl795p7gh4AbFduRXngA","name":"fps","brief":"","defaultValue":"60","scope":"instance","see":["timer.maxfps"],"type":"PropertyDoc","description":"

                              the rate at which the game world is updated,\nmay be greater than or lower than the display fps

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"2H_mCiX_Co8NJy0-2F3pZ","name":"gravity","brief":"","defaultValue":"<0,0.98>","scope":"instance","type":"PropertyDoc","description":"

                              world gravity

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"lI04bWKZcgmi8_E1r9cV0","name":"GUID","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              (G)ame (U)nique (Id)entifier"
                              \na GUID will be allocated for any renderable object added
                              \nto an object contain...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"A5dnWVve36EmcZZawZlMW","name":"height","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              height of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s5Y07XJZJXkJ1ZS5NWuS5","name":"inViewport","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Whether the renderable object is visible and within the viewport

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OHTTEqmrMkR_LcQD8Mz9G","name":"isDirty","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                              when true the renderable will be redrawn during the next update cycle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sN3SP2jqBNWLNFdZfNyFR","name":"isFlippedX","brief":"","access":"public","scope":"instance","see":["Renderable#flipX"],"type":"PropertyDoc","description":"

                              returns true if this renderable is flipped on the horizontal axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DAjZ8l9G2g-K6o_wkbCe_","name":"isFlippedY","brief":"","access":"public","scope":"instance","see":["Renderable#flipY"],"type":"PropertyDoc","description":"

                              returns true if this renderable is flipped on the vertical axis

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"EasWXU20-5GiwXGcL-DR9","name":"isFloating","brief":"","scope":"instance","see":["Renderable#floating"],"type":"PropertyDoc","description":"

                              Whether the renderable object is floating (i.e. used screen coordinates), or contained in a floating parent container

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eiSEnkZbS1H5X-M2B3TUe","name":"isKinematic","brief":"","defaultValue":"true","scope":"instance","type":"PropertyDoc","description":"

                              If true then physic collision and input events will not impact this renderable

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"OeJmTD3Xryn2z-L_NLZu3","name":"isPersistent","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              make the renderable object persistent over level changes

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"6YnH5opPS97zBWg3wKdi7","name":"left","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              left coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"q5tTHdQ6ndL4uR7THfBBa","name":"mask","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"// apply a mask in the shape of a Star\nmyNPCSprite.mask = new me.Polygon(myNPCSprite.width / 2, 0, [\n // draw a star\n {x: 0, y: 0},\n {x: 14, y: 30},\n {x: 47, y: 35},\n {x: 23, y: 57},\n {x: 44, y: 90},\n {x: 0, y: 62},\n {x: -44, y: 90},\n {x: -23, y: 57},\n {x: -47, y: 35},\n {x: -14, y: 30}\n]);"}],"scope":"instance","type":"PropertyDoc","description":"

                              A mask limits rendering elements to the shape and position of the given mask object.\nSo, if the renderable is larger than ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"SIdQnrlOMKdC5vzdxBCoh","name":"name","brief":"","defaultValue":"\"\"","scope":"instance","type":"PropertyDoc","description":"

                              The name of the renderable

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"CNyF33Kj2n8ZwV3CHlROE","name":"onVisibilityChange","brief":"","defaultValue":"undefined","examples":[{"caption":"","code":"this.onVisibilityChange = function(inViewport) {\n if (inViewport === true) {\n console.log(\"object has entered the in a camera viewport!\");\n }\n};"}],"scope":"instance","type":"PropertyDoc","description":"

                              an event handler that is called when the renderable leave or enter a camera viewport

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"qY1eOnMQkqA6K4CV1u2Uq","name":"physic","brief":"","defaultValue":"\"builtin\"","examples":[{"caption":"","code":"// disable builtin physic\nme.game.world.physic = \"none\";"}],"scope":"instance","see":["Application.Settings.physic"],"type":"PropertyDoc","description":"

                              the physic engine used by melonJS

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"s6_HcD4I0k-mZ8fkZT6n6","name":"points","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              Array of points defining the Polygon
                              \nNote: If you manually change points, you must call...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3QD23SMTaSOROOhlPOCph","name":"pos","brief":"","access":"public","scope":"instance","type":"PropertyDoc","description":"

                              Position of the Renderable relative to its parent container

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"z_4I-9C_jGD_B7MhF0VgH","name":"preRender","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Enabled pre-rendering for all tile layers.
                              \nIf false layers are rendered dynamically, if true layers are first fully r...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VCApdSd9mc6PksYyGEBOG","name":"right","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              right coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"3AoAG-qQeZPiwZmebrPFZ","name":"root","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              whether the container is the root of the scene

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"eQqqHo8wvzaEs1FWECweC","name":"shader","brief":"","defaultValue":"undefined","scope":"instance","type":"PropertyDoc","description":"

                              (Experimental) an optional shader, to be used instead of the default built-in one, when drawing this renderable (WebGL onl...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nwEazLzE7M5M4EuqIUgnV","name":"sortOn","brief":"","defaultValue":"\"z\"","scope":"instance","type":"PropertyDoc","description":"

                              The property of the child object that should be used to sort on this container\nvalue : "x", "y", "...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"sY0IGpJvNrdSBMHNlQ6ZC","name":"tint","brief":"","defaultValue":"(255, 255, 255)","examples":[{"caption":"","code":"// add a red tint to this renderable\nthis.tint.setColor(255, 128, 128);\n// remove the tint\nthis.tint.setColor(255, 255, 255);"}],"scope":"instance","type":"PropertyDoc","description":"

                              define a tint for this renderable. a (255, 255, 255) r, g, b value will remove the tint effect.

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"S30ydJqIORnZ_DiI3X0Ma","name":"top","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              top coordinate of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"VaoxCGcpaN3BCqvHAq1mf","name":"type","brief":"","defaultValue":"\"Rectangle\"","scope":"instance","type":"PropertyDoc","description":"

                              the shape type (used internally)

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"K1mzf53-ng-gHh11tHeZm","name":"updateWhenPaused","brief":"","defaultValue":"false","scope":"instance","type":"PropertyDoc","description":"

                              Whether to update this object when the game is paused.

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"UVvnk0pcdVeBG59XfT6cs","name":"width","brief":"","scope":"instance","type":"PropertyDoc","description":"

                              width of the Rectangle

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"5sCip99i3_iMWC0YrxsLT","name":"addBody","brief":"","scope":"instance","see":["Container.addChild"],"type":"MethodDoc","description":"

                              Add a physic body to the game world

                              ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              this game world

                              ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"w2QeGMgHi_pWQhxzkT89U","name":"addChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Add a child to the container
                              \nif auto-sort is disable, the object will be appended at the bottom of the list.\nAdding a...","params":[{"identifier":"child","optional":false,"description":"

                              Child to be added

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"z","optional":true,"description":"

                              forces the z index of the child to the specified value

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              the added child

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"r4LFVhqnwzRy-fNEvaEcN","name":"addChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Add a child to the container at the specified index
                              \n(the list won't be sorted after insertion)

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be added

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"index","optional":false,"description":"

                              The index at which to insert the child

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              the added child

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6E__B5-8mVngmeTetYnF1","name":"angleTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                              return the angle to the specified target

                              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                              angle in radians

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wtCpFqgITgr7IWjIcXVlw","name":"centerOn","brief":"","scope":"instance","type":"MethodDoc","description":"

                              center the rectangle position around the given coordinates

                              ","params":[{"identifier":"x","optional":false,"description":"

                              the x coordinate around which to center this rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              the y coordinate around which to center this rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              this rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ljTakD50TemB7yOvuOKMi","name":"clone","brief":"","scope":"instance","type":"MethodDoc","description":"

                              clone this rectangle

                              ","params":[],"returns":[{"description":"

                              new rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"H7EX4FrbdwurKS7_K-4cl","name":"constructor","brief":"","scope":"instance","type":"MethodDoc","params":[{"identifier":"x","optional":true,"default":"0","description":"

                              position of the container (accessible via the inherited pos.x property)

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"0","description":"

                              position of the container (accessible via the inherited pos.y property)

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"width","optional":true,"default":"game.viewport.width","description":"

                              width of the container

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"height","optional":true,"default":"game.viewport.height","description":"

                              height of the container

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"-9ppQ95bu2oBFP63nTeHb","name":"contains","brief":"","examples":[{"caption":"","code":"if (rect.contains(10, 10)) {\n // do something\n}\n// or\nif (rect.contains(myVector2d)) {\n // do something\n}\nif (rect.contains(myRect)) {\n // do something\n}"}],"scope":"instance","type":"MethodDoc","description":"

                              Returns true if the rectangle contains the given point or rectangle

                              ","params":[{"identifier":"x","description":"

                              x coordinate or a vector point, or a rectangle to test

                              ","dataType":{"tokens":[{"value":"number | Vector2d | Rect","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"Rect","kind":"link"}],"template":"%1 | %2 | %3"}},{"identifier":"y","optional":true,"description":"

                              y coordinate

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              True if the rectangle contain the given point or rectangle, otherwise false

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"OLfgOG0Xyp4pCsp__p5OI","name":"copy","brief":"","scope":"instance","type":"MethodDoc","description":"

                              copy the position and size of the given rectangle into this one

                              ","params":[{"identifier":"rect","optional":false,"description":"

                              Source rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              new rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"sHuPlX8JZofdHn6_i22Xg","name":"distanceTo","brief":"","scope":"instance","type":"MethodDoc","description":"

                              return the distance to the specified target

                              ","params":[{"identifier":"target","optional":false,"dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                              distance

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TlEGkFvLZw-dKeZ3ape2X","name":"equals","brief":"","scope":"instance","type":"MethodDoc","description":"

                              check if this rectangle is identical to the specified one

                              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              true if equals

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"QG9NXvany8jIgNdq1Juv0","name":"flipX","brief":"","scope":"instance","see":["Matrix2d#scaleX"],"type":"MethodDoc","description":"

                              flip the renderable on the horizontal axis (around the center of the renderable)

                              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                              true to flip this renderable.

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"J3du9x4ljvqmLef2MnlDk","name":"flipY","brief":"","scope":"instance","see":["Matrix2d#scaleY"],"type":"MethodDoc","description":"

                              flip the renderable on the vertical axis (around the center of the renderable)

                              ","params":[{"identifier":"flip","optional":true,"default":"true","description":"

                              true to flip this renderable.

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"1tTVPQaY0_WkeCZp-Yf0W","name":"forEach","brief":"","examples":[{"caption":"","code":"// iterate through all children of this container\ncontainer.forEach((child) => {\n // do something with the child\n child.doSomething();\n});\ncontainer.forEach((child, index) => { ... });\ncontainer.forEach((child, index, array) => { ... });\ncontainer.forEach((child, index, array) => { ... }, thisArg);"}],"scope":"instance","type":"MethodDoc","description":"

                              The forEach() method executes a provided function once per child element.
                              \nthe callback function is invoked with three...","params":[{"identifier":"callback","optional":false,"description":"

                              fnction to execute on each element

                              ","dataType":{"tokens":[{"value":"Function","kind":"canonical"}],"template":"Function"}},{"identifier":"thisArg","optional":true,"description":"

                              value to use as this(i.e reference Object) when executing callback.

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[],"extends":[],"implements":[]},{"id":"jhFHbHC5XCnByaGMkSUlA","name":"getAbsolutePosition","brief":"","scope":"instance","type":"MethodDoc","description":"

                              return the renderable absolute position in the game world

                              ","params":[],"returns":[{"dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"TihF1cCpf5aa4Wv0yX3gW","name":"getBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                              returns the bounding box for this renderable

                              ","params":[],"returns":[{"description":"

                              bounding box Rectangle object

                              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"7W7gSSaRIyGBtl_-dUQ5s","name":"getChildAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns the Child at the specified index

                              ","params":[{"identifier":"index","optional":false,"description":"

                              The index of the child

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              the child at the specified index

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"YBiewjB_T_StVs5m60l7V","name":"getChildByGUID","brief":"","scope":"instance","type":"MethodDoc","description":"

                              return the child corresponding to the specified GUID
                              \nnote : avoid calling this function every frame since\nit parses th...","params":[{"identifier":"guid","optional":false,"description":"

                              child GUID

                              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                              corresponding child or null

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"B60EDhdv0_oYK0F3e4v4A","name":"getChildByName","brief":"","scope":"instance","type":"MethodDoc","description":"

                              returns the list of childs with the specified name
                              \nas defined in Tiled (Name field of the Object Properties)
                              \nnote ...","params":[{"identifier":"name","optional":false,"description":"

                              child name

                              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                              Array of children

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"1LoV2dG2T6xP1RPEDr_YK","name":"getChildByProp","brief":"","examples":[{"caption":"","code":" // get the first child object called \"mainPlayer\" in a specific container :\n let ent = myContainer.getChildByProp(\"name\", \"mainPlayer\");\n\n // or query the whole world :\n let ent = container.getChildByProp(\"name\", \"mainPlayer\");\n\n // partial property matches are also allowed by using a RegExp.\n // the following matches \"redCOIN\", \"bluecoin\", \"bagOfCoins\", etc :\n let allCoins = container.getChildByProp(\"name\", /coin/i);\n\n // searching for numbers or other data types :\n let zIndex10 = container.getChildByProp(\"z\", 10);\n let inViewport = container.getChildByProp(\"inViewport\", true);"}],"scope":"instance","type":"MethodDoc","description":"

                              return the child corresponding to the given property and value.
                              \nnote : avoid calling this function every frame since\ni...","params":[{"identifier":"prop","optional":false,"description":"

                              Property name

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                              Value of the property

                              ","dataType":{"tokens":[{"value":"string | RegExp | number | boolean","kind":"canonical"},{"value":"RegExp","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"string | %1 | %2 | boolean"}}],"returns":[{"description":"

                              Array of childs

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"9YeNnxdHeoEJHYSlEcr4M","name":"getChildByType","brief":"","scope":"instance","type":"MethodDoc","description":"

                              returns the list of childs with the specified class type

                              ","params":[{"identifier":"classType","optional":false,"description":"

                              Class type

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}}],"returns":[{"description":"

                              Array of children

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"lZTc5uGjvSO0_dOOaCYDJ","name":"getChildIndex","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns the index of the given Child

                              ","params":[{"identifier":"child","optional":false,"description":"

                              The child object

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                              index

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"S5jwch8zBbB6HfU1FJcvK","name":"getChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                              return all child in this container

                              ","params":[],"returns":[{"description":"

                              an array of renderable object

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"cPDCUkjMWHp90xUoj4qch","name":"getIndices","brief":"","scope":"instance","type":"MethodDoc","description":"

                              returns a list of indices for all triangles defined in this polygon

                              ","params":[],"returns":[{"description":"

                              an array of vertex indices for all triangles forming this polygon.

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1<%2>"}}],"extends":[],"implements":[]},{"id":"Tn63aEvPd9makD3mt2Lt2","name":"getNextChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns the next child within the container or undefined if none

                              ","params":[{"identifier":"child","optional":false,"description":"

                              The child object

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"description":"

                              child

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"0gYl10utOFy_L00zRv8r8","name":"getOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                              get the renderable alpha channel value

                              ","params":[],"returns":[{"description":"

                              current opacity value between 0 and 1

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"LhNrs0PH8_xhthg1bz7hl","name":"getRootAncestor","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns the instance of the root container (i.e. the current application World container).

                              ","params":[],"returns":[{"description":"

                              root container

                              ","dataType":{"tokens":[{"value":"Container","kind":"canonical"},{"value":"Container","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"dG8znuLCjDHeTHJOp9AQ8","name":"hasChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns true if contains the specified Child

                              ","params":[{"identifier":"child","optional":false,"description":"

                              The child object

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[{"dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"YUEN2Y_Bk9ffQCPHu0s6i","name":"isAttachedToRoot","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Checks if this container is root or if it's attached to the root container.

                              ","params":[],"returns":[{"description":"

                              true if this container is root or if it's attached to the root container

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"1dM6DYuWc9owhnB3lg8CJ","name":"isConvex","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns true if the vertices composing this polygon form a convex shape (vertices must be in clockwise order).

                              ","params":[],"returns":[{"description":"

                              true if the vertices are convex, false if not, null if not computable

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"csrXFSOlCRR7HJWijKw9x","name":"isFinite","brief":"","scope":"instance","type":"MethodDoc","description":"

                              determines whether all coordinates of this rectangle are finite numbers.

                              ","params":[],"returns":[{"description":"

                              false if all coordinates are positive or negative Infinity or NaN; otherwise, true.

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"N-Tdr7tQf0f4cMSAYkE30","name":"lookAt","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Rotate this renderable towards the given target.

                              ","params":[{"identifier":"target","optional":false,"description":"

                              the renderable or position to look at

                              ","dataType":{"tokens":[{"value":"Renderable | Vector2d | Vector3d","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Vector2d","kind":"link"},{"value":"Vector3d","kind":"link"}],"template":"%1 | %2 | %3"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ad20Lfdc_pErDxgHY1Tez","name":"moveDown","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Move the child in the group one step backward (z depth).

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be moved

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"ZcoTFWt0vlDvqGvHBVTNP","name":"moveToBottom","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Move the specified child the bottom (z depth).

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be moved

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"ncN-KwAixzz8Zbklulg3Z","name":"moveToTop","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Move the specified child to the top(z depth).

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be moved

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"Jz2VMxPbOLfU4oCnLcLOM","name":"moveUp","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Move the child in the group one step forward (z depth).

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be moved

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"K9kmjblVaetIPAkp8EOIy","name":"onChildChange","brief":"","scope":"instance","type":"MethodDoc","description":"

                              a callback to be extended, triggered after a child has been added or removed

                              ","params":[{"identifier":"index","optional":false,"description":"

                              added or removed child index

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"YYUMsxm2-tPYLNn07TbMD","name":"onCollision","brief":"","examples":[{"caption":"","code":"// colision handler\nonCollision(response) {\n if (response.b.body.collisionType === me.collision.types.ENEMY_OBJECT) {\n // makes the other object solid, by substracting the overlap vector to the current position\n this.pos.sub(response.overlapV);\n this.hurt();\n // not solid\n return false;\n }\n // Make the object solid\n return true;\n},"}],"scope":"instance","type":"MethodDoc","description":"

                              onCollision callback, triggered in case of collision,\nwhen this renderable body is colliding with another one

                              ","params":[{"identifier":"response","optional":false,"description":"

                              the collision response object

                              ","dataType":{"tokens":[{"value":"ResponseObject","kind":"canonical"},{"value":"ResponseObject","kind":"link"}],"template":"%1"}},{"identifier":"other","optional":false,"description":"

                              the other renderable touching this one (a reference to response.a or response.b)

                              ","dataType":{"tokens":[{"value":"Renderable | Container | Entity | Sprite | NineSliceSprite","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Container","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"NineSliceSprite","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5"}}],"returns":[{"description":"

                              true if the object should respond to the collision (its position and velocity will be corrected)

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"X-k46_Hjr2zqShEoPyQsX","name":"onDestroyEvent","brief":"","scope":"instance","type":"MethodDoc","description":"

                              OnDestroy Notification function
                              \nCalled by engine before deleting the object

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"w8AO7enMRj382opHthVgm","name":"overlaps","brief":"","scope":"instance","type":"MethodDoc","description":"

                              check if this rectangle is intersecting with the specified one

                              ","params":[{"identifier":"rect","optional":false,"dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              true if overlaps

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"37UtuuqRhC9zQmvNhx3y1","name":"postDraw","brief":"","scope":"instance","see":["Renderable#preDraw","Renderable#draw"],"type":"MethodDoc","description":"

                              restore the rendering context after drawing (automatically called by melonJS).

                              ","params":[{"identifier":"renderer","optional":false,"description":"

                              a renderer object

                              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"molpspkXj2KJV7AGh_rDF","name":"preDraw","brief":"","scope":"instance","see":["Renderable#draw","Renderable#postDraw"],"type":"MethodDoc","description":"

                              Prepare the rendering context before drawing (automatically called by melonJS).\nThis will apply any defined transforms, an...","params":[{"identifier":"renderer","optional":false,"description":"

                              a renderer object

                              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}}],"returns":[],"extends":[],"implements":[]},{"id":"mDQPINS3uL8d3Nv7X7Yfk","name":"recalc","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Computes the calculated collision polygon.\nThis must be called if the points array, an...","params":[],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"GnI5_zaE-yuq5HbKbJorn","name":"removeBody","brief":"","scope":"instance","see":["Container.removeChild"],"type":"MethodDoc","description":"

                              Remove a physic body from the game world

                              ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              this game world

                              ","dataType":{"tokens":[{"value":"World","kind":"canonical"},{"value":"World","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"6c0Sh0RveGDMxv4_XF5w_","name":"removeChild","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Invokes the removeChildNow in a defer, to ensure the child is removed safely after the update & draw stack has complet...","params":[{"identifier":"child","optional":false,"description":"

                              Child to be removed

                              ","dataType":{"tokens":[{"value":"RendRenderable | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapTexterable","kind":"canonical"},{"value":"RendRenderable","kind":"canonical"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapTexterable","kind":"canonical"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15"}},{"identifier":"keepalive","optional":true,"default":"false","description":"

                              true to prevent calling child.destroy()

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"0BHkovwJT34JdJM9GWY59","name":"removeChildNow","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Removes (and optionally destroys) a child from the container.
                              \n(removal is immediate and unconditional)
                              \nNever use k...","params":[{"identifier":"child","optional":false,"description":"

                              Child to be removed

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"keepalive","optional":true,"default":"False","description":"

                              True to prevent calling child.destroy()

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"y-pfsFJPV6slcYV6W-25Z","name":"reset","brief":"

                              reset the game world

                              ","scope":"instance","type":"MethodDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"zzA34CGjgHe1bszdES3Lj","name":"resize","brief":"","scope":"instance","type":"MethodDoc","description":"

                              resize the rectangle

                              ","params":[{"identifier":"w","optional":false,"description":"

                              new width of the rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"h","optional":false,"description":"

                              new height of the rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              this rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"a4bT-Vwq7k_O0FRInRDCY","name":"rotate","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Rotate this renderable by the specified angle (in radians).

                              ","params":[{"identifier":"angle","optional":false,"description":"

                              The angle to rotate (in radians)

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"v","optional":true,"description":"

                              an optional point to rotate around

                              ","dataType":{"tokens":[{"value":"Vector2d | ObservableVector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"},{"value":"ObservableVector2d","kind":"link"}],"template":"%1 | %2"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"3SvvMn6iM-gCgTssFBVjg","name":"scale","brief":"","scope":"instance","type":"MethodDoc","description":"

                              scale the renderable around his anchor point. Scaling actually applies changes\nto the currentTransform member wich is use...","params":[{"identifier":"x","optional":false,"description":"

                              a number representing the abscissa of the scaling vector.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":true,"default":"x","description":"

                              a number representing the ordinate of the scaling vector.

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"n5CqlXHgHF--wNAQV7bAS","name":"scaleV","brief":"","scope":"instance","type":"MethodDoc","description":"

                              scale the renderable around his anchor point

                              ","params":[{"identifier":"v","optional":false,"description":"

                              scaling vector

                              ","dataType":{"tokens":[{"value":"Vector2d","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"n-Me_b1RfrTfA6X5-e9No","name":"setChildsProperty","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Automatically set the specified property of all childs to the given value

                              ","params":[{"identifier":"prop","optional":false,"description":"

                              property name

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"value","optional":false,"description":"

                              property value

                              ","dataType":{"tokens":[{"value":"object","kind":"canonical"}],"template":"object"}},{"identifier":"recursive","optional":true,"default":"false","description":"

                              recursively apply the value to child containers if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"ELQ1ZODvDCSn-LxISRoRB","name":"setOpacity","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set the renderable alpha channel value

                              ","params":[{"identifier":"alpha","optional":false,"description":"

                              opacity value between 0.0 and 1.0

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"L85paiV4flhIbzqG1fGZi","name":"setShape","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set new value to the rectangle shape

                              ","params":[{"identifier":"x","optional":false,"description":"

                              position of the Rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              position of the Rectangle

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"w","optional":false,"description":"

                              width of the rectangle, or an array of vector defining the rectangle

                              ","dataType":{"tokens":[{"value":"number | Array","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %3<%2>"}},{"identifier":"h","optional":true,"description":"

                              height of the rectangle, if a numeral width parameter is specified

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              this rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"RI8q_FrWJ250Idt1bAJBx","name":"setVertices","brief":"","scope":"instance","type":"MethodDoc","description":"

                              set the vertices defining this Polygon

                              ","params":[{"identifier":"vertices","optional":false,"description":"

                              array of vector or vertice defining the Polygon

                              ","dataType":{"tokens":[{"value":"Array","kind":"canonical"},{"value":"Array","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1<%2>"}}],"returns":[{"description":"

                              this instance for objecf chaining

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"ssBFI9QWPzylGkj9yKGEa","name":"shift","brief":"","examples":[{"caption":"","code":"polygon.shift(10, 10);\n// or\npolygon.shift(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                              Shifts the Polygon to the given position vector.

                              ","params":[{"identifier":"x","description":"

                              x coordinate or a vector point to shift to

                              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"J_BS3Lp8EzfPbvJZQzqgn","name":"sort","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Manually trigger the sort of all the childs in the container

                              ","params":[{"identifier":"recursive","optional":true,"default":"false","description":"

                              recursively sort all containers if true

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[],"extends":[],"implements":[]},{"id":"UOscS-v61TUo91kjXeSDQ","name":"step","brief":"","scope":"instance","type":"MethodDoc","description":"

                              update the builtin physic simulation by one step (called by the game world update method)

                              ","params":[{"identifier":"dt","optional":false,"description":"

                              the time passed since the last frame update

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"_CoEff0WhFIQFY5GnT1Wa","name":"swapChildren","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Swaps the position (z-index) of 2 children

                              ","params":[{"identifier":"child","optional":false,"description":"

                              Child to be added

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}},{"identifier":"child2","optional":false,"description":"

                              Child to be added

                              ","dataType":{"tokens":[{"value":"Renderable | Entity | Sprite | Collectable | Trigger | Draggable | DropTarget | NineSliceSprite | ImageLayer | ColorLayer | Light2d | UIBaseElement | UISpriteElement | UITextButton | Text | BitmapText","kind":"canonical"},{"value":"Renderable","kind":"link"},{"value":"Entity","kind":"link"},{"value":"Sprite","kind":"link"},{"value":"Collectable","kind":"link"},{"value":"Trigger","kind":"link"},{"value":"Draggable","kind":"link"},{"value":"DropTarget","kind":"link"},{"value":"NineSliceSprite","kind":"link"},{"value":"ImageLayer","kind":"link"},{"value":"ColorLayer","kind":"link"},{"value":"Light2d","kind":"link"},{"value":"UIBaseElement","kind":"link"},{"value":"UISpriteElement","kind":"link"},{"value":"UITextButton","kind":"link"},{"value":"Text","kind":"link"},{"value":"BitmapText","kind":"link"}],"template":"%1 | %2 | %3 | %4 | %5 | %6 | %7 | %8 | %9 | %10 | %11 | %12 | %13 | %14 | %15 | %16"}}],"returns":[],"extends":[],"implements":[]},{"id":"nIb0ozcmFrS8RTU63gyU3","name":"to2d","brief":"","scope":"instance","type":"MethodDoc","description":"

                              apply a 2d projection to this shapen

                              ","params":[],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"VTttSp0z-bucp06GfA6u7","name":"toIso","brief":"","scope":"instance","type":"MethodDoc","description":"

                              apply an isometric projection to this shape

                              ","params":[],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"pqGXtTar56puGc7kwG4c-","name":"toPolygon","brief":"","scope":"instance","type":"MethodDoc","description":"

                              Returns a polygon whose edges are the same as this box.

                              ","params":[],"returns":[{"description":"

                              a new Polygon that represents this rectangle.

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"o-DGxTGHKjV1OhJ4G1hfy","name":"transform","brief":"","scope":"instance","see":["Renderable#currentTransform"],"type":"MethodDoc","description":"

                              multiply the renderable currentTransform with the given matrix

                              ","params":[{"identifier":"m","optional":false,"description":"

                              the transformation matrix

                              ","dataType":{"tokens":[{"value":"Matrix2d","kind":"canonical"},{"value":"Matrix2d","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Renderable","kind":"canonical"},{"value":"Renderable","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"wQysDvn8akqLgkdarwdZc","name":"translate","brief":"","examples":[{"caption":"","code":"polygon.translate(10, 10);\n// or\npolygon.translate(myVector2d);"}],"scope":"instance","type":"MethodDoc","description":"

                              translate the Polygon by the specified offset

                              ","params":[{"identifier":"x","description":"

                              x offset or a vector point to translate by

                              ","dataType":{"tokens":[{"value":"number | Vector2d","kind":"canonical"},{"value":"number","kind":"canonical"},{"value":"Vector2d","kind":"link"}],"template":"%1 | %2"}},{"identifier":"y","optional":true,"description":"

                              y offset

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              Reference to this object for method chaining

                              ","dataType":{"tokens":[{"value":"Polygon","kind":"canonical"},{"value":"Polygon","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"suR_GybkWAzj4q2vqH16j","name":"union","brief":"","scope":"instance","type":"MethodDoc","description":"

                              merge this rectangle with another one

                              ","params":[{"identifier":"rect","optional":false,"description":"

                              other rectangle to union with

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"returns":[{"description":"

                              the union(ed) rectangle

                              ","dataType":{"tokens":[{"value":"Rect","kind":"canonical"},{"value":"Rect","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"2Ky68bNfwGuCGGwms7gzu","name":"update","brief":"","scope":"instance","type":"MethodDoc","description":"

                              update the game world

                              ","params":[{"identifier":"dt","optional":false,"description":"

                              the time passed since the last frame update

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[{"description":"

                              true if the world is dirty

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"extends":[],"implements":[]},{"id":"dXRpVCl9SZer70GLblPXt","name":"updateBounds","brief":"","scope":"instance","type":"MethodDoc","description":"

                              update the bounding box for this container.

                              ","params":[{"identifier":"absolute","optional":true,"default":"true","description":"

                              update the bounds size and position in (world) absolute coordinates

                              ","dataType":{"tokens":[{"value":"boolean","kind":"canonical"}],"template":"boolean"}}],"returns":[{"description":"

                              this container bounding box Rectangle object

                              ","dataType":{"tokens":[{"value":"Bounds","kind":"canonical"},{"value":"Bounds","kind":"link"}],"template":"%1"}}],"extends":[],"implements":[]},{"id":"HPJYEJYVA36VS8MU9JDju","name":"draw","brief":"","access":"protected","scope":"instance","type":"MethodDoc","description":"

                              draw this renderable (automatically called by melonJS)

                              ","params":[{"identifier":"renderer","optional":false,"description":"

                              a renderer instance

                              ","dataType":{"tokens":[{"value":"CanvasRenderer | WebGLRenderer","kind":"canonical"},{"value":"CanvasRenderer","kind":"link"},{"value":"WebGLRenderer","kind":"link"}],"template":"%1 | %2"}},{"identifier":"viewport","optional":true,"description":"

                              the viewport to (re)draw

                              ","dataType":{"tokens":[{"value":"Camera2d","kind":"canonical"},{"value":"Camera2d","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"7hSWTcVfGvG23Jm7fmJYK","name":"bodyApplyGravity","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                              Apply gravity to the given body

                              ","params":[{"identifier":"body","optional":false,"dataType":{"tokens":[{"value":"Body","kind":"canonical"},{"value":"Body","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"rEWe4qOFxc17oLHyociX3","name":"onAnchorUpdate","brief":"","access":"private","scope":"instance","type":"MethodDoc","description":"

                              called when the anchor point value is changed

                              ","params":[{"identifier":"x","optional":false,"description":"

                              the new X value to be set for the anchor

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              the new Y value to be set for the anchor

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},{"id":"O_OiuZRZ2PBGslbr9HUBN","name":"AUTO","brief":"","defaultValue":"2","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                              constant to auto-select the renderer (Attempt WebGL first, with fallback to Canvas)

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"TjoMKJXKK2BnlKpMuWj-V","name":"CANVAS","brief":"","defaultValue":"0","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                              constant to select the HTML5 Canvas renderer

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"aeRTGqld4zuev0VfS_Prw","name":"version","brief":"","defaultValue":"\"__VERSION__\"","readonly":true,"scope":"static","type":"PropertyDoc","description":"

                              current melonJS version

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"DMMnA8MP4x-KA6QF6Ck1y","name":"WEBGL","brief":"","defaultValue":"1","readonly":true,"scope":"static","see":["Application"],"type":"PropertyDoc","description":"

                              constant to select select the WebGL renderer

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"Q78IVvr-Lq3R2LtC1tyND","name":"imgList","brief":"

                              where all preloaded content is cached

                              ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"bLTSmeUkfNX46NeF8ehQU","name":"initialized","brief":"","defaultValue":"false","readonly":true,"type":"PropertyDoc","description":"

                              a flag indicating that melonJS is fully initialized

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"i6zm2TN9YCRR8oslcQYjY","name":"parserInitialized","brief":"

                              keep track if parsers were registered

                              ","defaultValue":"false","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"FV_8_fNEWtLtAhMdeWS9l","name":"parsers","brief":"

                              list of parser function for supported format type

                              ","type":"PropertyDoc","params":[],"returns":[],"extends":[],"implements":[]},{"id":"nZVbMKiiuVhpELEHMOZob","name":"skipAutoInit","brief":"","defaultValue":"false","see":["boot"],"type":"PropertyDoc","description":"

                              disable melonJS auto-initialization

                              ","params":[],"returns":[],"extends":[],"implements":[]},{"id":"h7_6y41Czdd-BkL1Thb4n","name":"boot","brief":"","access":"public","see":["skipAutoInit"],"type":"FunctionDoc","description":"

                              initialize the melonJS library.\nthis is automatically called unless me.skipAutoInit is set to true,\nto allow asynchronous ...","params":[],"returns":[],"extends":[],"implements":[]},{"id":"jOGLPY8U5_bk88iiHYYeZ","name":"consoleHeader","brief":"","type":"FunctionDoc","description":"

                              display information

                              ","params":[{"identifier":"app","optional":false,"description":"

                              the game application instance calling this function

                              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"NATjy57ddbGEe8lFuovd5","name":"warning","brief":"","type":"FunctionDoc","description":"

                              display a deprecation warning in the console

                              ","params":[{"identifier":"deprecated","optional":false,"description":"

                              deprecated class,function or property name

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"replacement","optional":false,"description":"

                              the replacement class, function, or property name

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}},{"identifier":"version","optional":false,"description":"

                              the version since when the lass,function or property is deprecated

                              ","dataType":{"tokens":[{"value":"string","kind":"canonical"}],"template":"string"}}],"returns":[],"extends":[],"implements":[]},{"id":"Gr9OxMggPoAxX63JQcIP3","name":"onresize","brief":"","access":"private","type":"FunctionDoc","description":"

                              callback for window resize event

                              ","params":[{"identifier":"game","optional":false,"description":"

                              the game application instance triggering the resize

                              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]},{"id":"tRC_j6iPN7SyyMQyvoLm0","name":"scale","brief":"","access":"private","type":"FunctionDoc","description":"

                              scale the "displayed" canvas by the given scalar.\nthis will modify the size of canvas element directly.\nOnly use...","params":[{"identifier":"game","optional":false,"description":"

                              the game application instance triggering the resize

                              ","dataType":{"tokens":[{"value":"Application","kind":"canonical"},{"value":"Application","kind":"link"}],"template":"%1"}},{"identifier":"x","optional":false,"description":"

                              x scaling multiplier

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}},{"identifier":"y","optional":false,"description":"

                              y scaling multiplier

                              ","dataType":{"tokens":[{"value":"number","kind":"canonical"},{"value":"number","kind":"canonical"}],"template":"%1"}}],"returns":[],"extends":[],"implements":[]}]},"registry":{"pkg-q5btX86ROmbx1lHwOR9N0":{"uri":"/melonJS/docs/melonjs.html"},"621XPQRfFca_x_ufJ6Gie":{"uri":"/melonJS/docs/melonjs/audio.html"},"tSgB79fLZOwrMRFcWUheD":{"uri":"/melonJS/docs/melonjs/audio.html#stopOnAudioError"},"Kr78uQAkNnnnmt8gPMUPl":{"uri":"/melonJS/docs/melonjs/audio/disable.html"},"uUOe7FFkxcq4-58Za0hkt":{"uri":"/melonJS/docs/melonjs/audio/enable.html"},"s89pEPM1zOof_QuC0sPZo":{"uri":"/melonJS/docs/melonjs/audio/fade.html"},"kObPEX5Rfzb_s2mbSz4bi":{"uri":"/melonJS/docs/melonjs/audio/getCurrentTrack.html"},"-TWynriupu3VVs7PdlI8N":{"uri":"/melonJS/docs/melonjs/audio/getVolume.html"},"PEV7tCPxAV79dmEbzkhXP":{"uri":"/melonJS/docs/melonjs/audio/hasAudio.html"},"r5ooIj9oVyprL202ggraG":{"uri":"/melonJS/docs/melonjs/audio/hasFormat.html"},"qrfOhHi8Dnv9dFgaDfzdi":{"uri":"/melonJS/docs/melonjs/audio/init.html"},"mR0rp6efxfHmgubOA9MqK":{"uri":"/melonJS/docs/melonjs/audio/load.html"},"5nuta_YAWQe34OxKZi3LI":{"uri":"/melonJS/docs/melonjs/audio/mute.html"},"QrKMEDUMj_PglrxfKopaL":{"uri":"/melonJS/docs/melonjs/audio/muteAll.html"},"44dkL2C5i_usIeNifbo1A":{"uri":"/melonJS/docs/melonjs/audio/muted.html"},"Wg59xE_nUuFBL-6WyxgfH":{"uri":"/melonJS/docs/melonjs/audio/pause.html"},"3toEzYQ9bA3e0UW_-cNCE":{"uri":"/melonJS/docs/melonjs/audio/pauseTrack.html"},"hokWnRKF-r-Rz1KoKU9bx":{"uri":"/melonJS/docs/melonjs/audio/play.html"},"Kv32aSrSZvwxD92W1Ca4o":{"uri":"/melonJS/docs/melonjs/audio/playTrack.html"},"gPLk3_JkGT7lmePnbHfKV":{"uri":"/melonJS/docs/melonjs/audio/rate.html"},"VUFu4gr3aAmvPOmV-0nxs":{"uri":"/melonJS/docs/melonjs/audio/resume.html"},"LCb0I_ZzClLkj5lM_dh8P":{"uri":"/melonJS/docs/melonjs/audio/resumeTrack.html"},"h72mbkFkU9hS-9U9d_yMT":{"uri":"/melonJS/docs/melonjs/audio/seek.html"},"CLOwbb7m8OOfASGGV-QRc":{"uri":"/melonJS/docs/melonjs/audio/setVolume.html"},"j0eynV8z7wl7Qkxa2ESNX":{"uri":"/melonJS/docs/melonjs/audio/stop.html"},"zJBBglJHBIvth8lekZ8fL":{"uri":"/melonJS/docs/melonjs/audio/stopTrack.html"},"VW1oX3Q3MdhFhcrwM95Yw":{"uri":"/melonJS/docs/melonjs/audio/unload.html"},"p6_Qi53BRr9WYnEUwM2G5":{"uri":"/melonJS/docs/melonjs/audio/unloadAll.html"},"UnkPqTqW5YVr_XhLQ56F0":{"uri":"/melonJS/docs/melonjs/audio/unmute.html"},"sKP5wV3G9cVAyCLubdeoN":{"uri":"/melonJS/docs/melonjs/audio/unmuteAll.html"},"Z94Rw9XFpsyMYSomjSXyb":{"uri":"/melonJS/docs/melonjs/collision.html"},"97vjuXemPkqETRUMZ6A5L":{"uri":"/melonJS/docs/melonjs/collision/types.html"},"XiSR1BhuO6AaLx08J8OBj":{"uri":"/melonJS/docs/melonjs/collision/types.html#ACTION_OBJECT"},"u24Hg2u6lnI37CHItjXNA":{"uri":"/melonJS/docs/melonjs/collision/types.html#ALL_OBJECT"},"iKVU1Dip2nv0Q1wglwkqY":{"uri":"/melonJS/docs/melonjs/collision/types.html#COLLECTABLE_OBJECT"},"AuegZKCRr4MHzMX4VX8il":{"uri":"/melonJS/docs/melonjs/collision/types.html#ENEMY_OBJECT"},"k2CD1nd0dyrY2lDktxWZE":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT"},"lXZbyYSwV_YuUqE9MrOrb":{"uri":"/melonJS/docs/melonjs/collision/types.html#NO_OBJECT_"},"0iKrS4_-v2TSIetaFp38_":{"uri":"/melonJS/docs/melonjs/collision/types.html#NPC_OBJECT"},"u91ylYfuqyu8lpB2bOZCb":{"uri":"/melonJS/docs/melonjs/collision/types.html#PLAYER_OBJECT"},"SJNiAd6p-thmb6AZYbd56":{"uri":"/melonJS/docs/melonjs/collision/types.html#PROJECTILE_OBJECT"},"-_uSu2pQ4Eu1ztYRnfKJT":{"uri":"/melonJS/docs/melonjs/collision/types.html#USER"},"lz1qC8QN0GbUg_kzVYDZ9":{"uri":"/melonJS/docs/melonjs/collision/types.html#WORLD_SHAPE"},"aSWGZBfOe95P2ipjYCOFi":{"uri":"/melonJS/docs/melonjs/collision.html#maxChildren"},"gmOAtbk-zZA0l0MdbSTD7":{"uri":"/melonJS/docs/melonjs/collision.html#maxDepth"},"hfJSuSJs7zki4YkNY2pxf":{"uri":"/melonJS/docs/melonjs/collision.html#rayCast"},"yRLYmtkm4GEO0EAHfIlyb":{"uri":"/melonJS/docs/melonjs/device.html"},"FDMDnvbIYW9nvlarQ8chx":{"uri":"/melonJS/docs/melonjs/device/platform.html"},"eEmjf8hHbqTc23hELrQBr":{"uri":"/melonJS/docs/melonjs/device/platform.html#android"},"7yY8q3DBmbTW-Lw7nEHKP":{"uri":"/melonJS/docs/melonjs/device/platform.html#android2"},"JzZuPLhoBg7-u-d3JuPCw":{"uri":"/melonJS/docs/melonjs/device/platform.html#BlackBerry"},"CKbKFQz6dPOlmvqdWyxV_":{"uri":"/melonJS/docs/melonjs/device/platform.html#chromeOS"},"Kesrto7wytTJJrMXn3onE":{"uri":"/melonJS/docs/melonjs/device/platform.html#ejecta"},"f-nRzhv8tGswqub40LUcZ":{"uri":"/melonJS/docs/melonjs/device/platform.html#iOS"},"MpSX2wXAzoM4mYWe8IV2D":{"uri":"/melonJS/docs/melonjs/device/platform.html#isMobile"},"F4_U4R7cuebCGJjPO3FWL":{"uri":"/melonJS/docs/melonjs/device/platform.html#isWeixin"},"kvqGhQoWPYOepUmopLKJ4":{"uri":"/melonJS/docs/melonjs/device/platform.html#Kindle"},"cJWvE9tZoCqmYkl1lV9Ds":{"uri":"/melonJS/docs/melonjs/device/platform.html#linux"},"QKT_uz2aZewhdfMIJdsu1":{"uri":"/melonJS/docs/melonjs/device/platform.html#nodeJS"},"keHoy140LlOfuoixTtYRm":{"uri":"/melonJS/docs/melonjs/device/platform.html#ua"},"wRVNpXmXcdbYUxXCSeKf4":{"uri":"/melonJS/docs/melonjs/device/platform.html#wp"},"PeRhxj9eokSOdx1jyg2kd":{"uri":"/melonJS/docs/melonjs/device.html#accelerationX"},"OG0gHvpGmjlI_64rwuAcn":{"uri":"/melonJS/docs/melonjs/device.html#accelerationY"},"QgIr7rMPbVF99YxXXKHMV":{"uri":"/melonJS/docs/melonjs/device.html#accelerationZ"},"7bQ3SEvkqEyqrXkPcy93o":{"uri":"/melonJS/docs/melonjs/device.html#alpha"},"o5Iex2TBNtfoSjTby37Nm":{"uri":"/melonJS/docs/melonjs/device.html#autoFocus"},"2rrp4dxqJhHJk7QEZAB5f":{"uri":"/melonJS/docs/melonjs/device.html#beta"},"fSrdsLT-TpZ_F0LfJO6pc":{"uri":"/melonJS/docs/melonjs/device.html#devicePixelRatio"},"60g3WT6UScGh5vvXxW5eD":{"uri":"/melonJS/docs/melonjs/device.html#gamma"},"EHcHdvHbmWb-9t_YSCPeQ":{"uri":"/melonJS/docs/melonjs/device.html#hasAccelerometer"},"4Mam-LHc522mMYUNnFc6l":{"uri":"/melonJS/docs/melonjs/device.html#hasDeviceOrientation"},"VvVCehc1SGuFUEkLUABvB":{"uri":"/melonJS/docs/melonjs/device.html#hasFullscreenSupport"},"_r1Vuk-6Mc_8zkoLqnoE9":{"uri":"/melonJS/docs/melonjs/device.html#hasHTML5Audio"},"CvOX5bYU4y0Jhf5nPNXrM":{"uri":"/melonJS/docs/melonjs/device.html#hasPointerLockSupport"},"oBlQ4g6NbflOfqnafvMuD":{"uri":"/melonJS/docs/melonjs/device.html#hasWebAudio"},"nBJZWSqFCdhXT2VXw6ns_":{"uri":"/melonJS/docs/melonjs/device.html#isMobile"},"2r-lhAkFg_e90kOeJd1Dh":{"uri":"/melonJS/docs/melonjs/device.html#language"},"uwKrqwV0y4MYTcOFR0dDn":{"uri":"/melonJS/docs/melonjs/device.html#localStorage"},"uOrC1p5o8mCOTkQ8TedFg":{"uri":"/melonJS/docs/melonjs/device.html#maxTouchPoints"},"RM0IkfS1BAYucvsuXucGx":{"uri":"/melonJS/docs/melonjs/device.html#nativeBase64"},"ZSPqvy_Cd-NHnn_pe8PrP":{"uri":"/melonJS/docs/melonjs/device.html#offscreenCanvas"},"dJoSeSKHR0Ci9B9VCScef":{"uri":"/melonJS/docs/melonjs/device.html#pauseOnBlur"},"c8v3qRPn2V7pbeNxyrs03":{"uri":"/melonJS/docs/melonjs/device.html#platform"},"h3HddxhbIK8E9B-kSJzD7":{"uri":"/melonJS/docs/melonjs/device.html#pointerEvent"},"C4AQt_oWJiNWlPx9m3tsO":{"uri":"/melonJS/docs/melonjs/device.html#resumeOnFocus"},"xmstl2e0Rrzg6893kVL08":{"uri":"/melonJS/docs/melonjs/device.html#screenOrientation"},"MkqX-hf_1gzP5TtbdOBZA":{"uri":"/melonJS/docs/melonjs/device.html#sound"},"awwgkqESjpLJH4NRjyfL4":{"uri":"/melonJS/docs/melonjs/device.html#stopOnBlur"},"Ua6Gx3Yxr5fmLz5RjROpz":{"uri":"/melonJS/docs/melonjs/device.html#touch"},"4KPoJ7lR4aF-mKbFNBjtk":{"uri":"/melonJS/docs/melonjs/device.html#touchEvent"},"XkctnQqIZG2RPQpnNHmO_":{"uri":"/melonJS/docs/melonjs/device.html#wheel"},"wXpdjHD0-qs5LUXv_7Zth":{"uri":"/melonJS/docs/melonjs/device/enableSwipe.html"},"dU3U0NAduDtr4Mtg18qiJ":{"uri":"/melonJS/docs/melonjs/device/exitFullscreen.html"},"V13OE8n9BQ83xZGT0Og_w":{"uri":"/melonJS/docs/melonjs/device/focus.html"},"_cODt56qYDK0wOcUa4HDC":{"uri":"/melonJS/docs/melonjs/device/getElement.html"},"x50Evvtk7M49W-4hs6EwE":{"uri":"/melonJS/docs/melonjs/device/getElementBounds.html"},"FomJh0LEMxVH6S4HzhxDf":{"uri":"/melonJS/docs/melonjs/device/getParentBounds.html"},"Wg7oORc5KFivrvzXeLNw2":{"uri":"/melonJS/docs/melonjs/device/getParentElement.html"},"H2yhhw9mZCziYeKdRZ0eX":{"uri":"/melonJS/docs/melonjs/device/getScreenOrientation.html"},"scAoZcYQTKgPd9t5amgRy":{"uri":"/melonJS/docs/melonjs/device/getStorage.html"},"mS7DBdeMnTCNnTIjm1s0d":{"uri":"/melonJS/docs/melonjs/device/isFullscreen.html"},"dDeeMa4UZTozgJ06ifKQo":{"uri":"/melonJS/docs/melonjs/device/isLandscape.html"},"743a2VH4rlqjT67UwIpHK":{"uri":"/melonJS/docs/melonjs/device/isPortrait.html"},"HK83GLiv6pJfYDd5M4Qxa":{"uri":"/melonJS/docs/melonjs/device/isWebGLSupported.html"},"7yK6XNFjqrSyZ-YYgz4eV":{"uri":"/melonJS/docs/melonjs/device/lockOrientation.html"},"IelIVgkLcAcw_SVbWtSHE":{"uri":"/melonJS/docs/melonjs/device/onReady.html"},"wB0VW7dgTp9YLDuRgB7Av":{"uri":"/melonJS/docs/melonjs/device/requestFullscreen.html"},"qzaY4gSHRYICruINx8itM":{"uri":"/melonJS/docs/melonjs/device/unlockOrientation.html"},"CGpReY8F5PRXriHnobKZQ":{"uri":"/melonJS/docs/melonjs/device/unwatchAccelerometer.html"},"rJlJ98rm5PiYrGW55rtUJ":{"uri":"/melonJS/docs/melonjs/device/unwatchDeviceOrientation.html"},"a9uUgrTpe4B3O2XXHXVhr":{"uri":"/melonJS/docs/melonjs/device/vibrate.html"},"5z6lcFjh00yrEY8fozL4j":{"uri":"/melonJS/docs/melonjs/device/watchAccelerometer.html"},"xQzbZImk12LvrSdWHKvB1":{"uri":"/melonJS/docs/melonjs/device/watchDeviceOrientation.html"},"q-LZJUiRdhWRiCYwwZftF":{"uri":"/melonJS/docs/melonjs/event.html"},"a6Du_Q3oLDHXtG9sp7NfM":{"uri":"/melonJS/docs/melonjs/event.html#BLUR"},"Ph95kT85TgfWhI1JtjcUp":{"uri":"/melonJS/docs/melonjs/event.html#BOOT"},"s6IBPxA4MaUmp1Ln8LfRT":{"uri":"/melonJS/docs/melonjs/event.html#CANVAS_ONRESIZE"},"g4BtsSb5RRulOGO0tCLP4":{"uri":"/melonJS/docs/melonjs/event.html#DOM_READY"},"erXIy92ahvv0u9R4M4nfU":{"uri":"/melonJS/docs/melonjs/event.html#DRAGEND"},"KKBWbA0neuaOcgq4O5BnP":{"uri":"/melonJS/docs/melonjs/event.html#DRAGSTART"},"X68xeiWmyFwTE5r4Gjd4d":{"uri":"/melonJS/docs/melonjs/event.html#FOCUS"},"13yVNwGkKzmDvQjBV7wcA":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_DRAW"},"ktcbFSqkkbigsr5-4j6ju":{"uri":"/melonJS/docs/melonjs/event.html#GAME_AFTER_UPDATE"},"BNGKxW322luwjc5GQ9yK8":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_DRAW"},"exgJPwhuD9ItCQrO_zXS_":{"uri":"/melonJS/docs/melonjs/event.html#GAME_BEFORE_UPDATE"},"gPZMhba5arf4Oiofr1cPM":{"uri":"/melonJS/docs/melonjs/event.html#GAME_INIT"},"EDUdWkUSm1FyHFg7Wilz2":{"uri":"/melonJS/docs/melonjs/event.html#GAME_RESET"},"wgZezTYGHOleAPpj0TO4a":{"uri":"/melonJS/docs/melonjs/event.html#GAME_UPDATE"},"1sI0HwAEj5Oanaeqb976B":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_CONNECTED"},"T4Eyqn6LfD9bvrqgsA11i":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_DISCONNECTED"},"FzNXYX31iRsiM91ktwcjx":{"uri":"/melonJS/docs/melonjs/event.html#GAMEPAD_UPDATE"},"NWTl95TAvz-eryKe7yYMy":{"uri":"/melonJS/docs/melonjs/event.html#KEYDOWN"},"a--BgJ8LRt1LZdrMImLLb":{"uri":"/melonJS/docs/melonjs/event.html#KEYUP"},"06HO0YqG6BnjSY-L-fVEH":{"uri":"/melonJS/docs/melonjs/event.html#LEVEL_LOADED"},"dUEoOZX3jqnyB5fPgX3Nv":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_COMPLETE"},"i60QzExTphZpBEkpMqnrg":{"uri":"/melonJS/docs/melonjs/event.html#LOADER_PROGRESS"},"aUZ8KRcf3zL-RGS_WD5o3":{"uri":"/melonJS/docs/melonjs/event.html#ONCONTEXT_RESTORED"},"GaV2S8xKOLRE1vxRoHIU_":{"uri":"/melonJS/docs/melonjs/event.html#POINTERLOCKCHANGE"},"CiV75_aSxlqLiI7_3-k5T":{"uri":"/melonJS/docs/melonjs/event.html#POINTERMOVE"},"JK8_hNLHV_q6YRSB1j9NJ":{"uri":"/melonJS/docs/melonjs/event.html#STAGE_RESET"},"40h63DGUgJ8CebWVmqLEP":{"uri":"/melonJS/docs/melonjs/event.html#STATE_CHANGE"},"w3orIwEs41wmxpoNiasbd":{"uri":"/melonJS/docs/melonjs/event.html#STATE_PAUSE"},"JuHx5P_VT9Ta3962j65TQ":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESTART"},"B9OWwkKMMw6B38erS18nj":{"uri":"/melonJS/docs/melonjs/event.html#STATE_RESUME"},"lzrgu0MILImE70Xcr_7DQ":{"uri":"/melonJS/docs/melonjs/event.html#STATE_STOP"},"UOHpJ7S8UW6av4XSfuBj4":{"uri":"/melonJS/docs/melonjs/event.html#TICK"},"Cwzw_xtKBcAv-79Ev5sdK":{"uri":"/melonJS/docs/melonjs/event.html#VIDEO_INIT"},"TuvYoPDycWTw31bntbTB2":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONCHANGE"},"Si7ahVZTCKLhhGsh4wUvb":{"uri":"/melonJS/docs/melonjs/event.html#VIEWPORT_ONRESIZE"},"Yme2zO9l1VGFGCqThik04":{"uri":"/melonJS/docs/melonjs/event.html#WEBGL_ONCONTEXT_LOST"},"dBrlM1wRXwK9wKNsQc--p":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONORIENTATION_CHANGE"},"0kjYLmRHfrdLxO6iZ2N9A":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONRESIZE"},"IeeuPDSvKxG2_FKfiyp_7":{"uri":"/melonJS/docs/melonjs/event.html#WINDOW_ONSCROLL"},"veuTnGWCccK4BljEf5VTv":{"uri":"/melonJS/docs/melonjs/event.html#WORLD_STEP"},"RVX7MNx17m87JY224dy7n":{"uri":"/melonJS/docs/melonjs/event/emit.html"},"pOFjd5RlHKdScu1f8FzNQ":{"uri":"/melonJS/docs/melonjs/event/off.html"},"Tf1e-SLBDI-VWsMNCqmnF":{"uri":"/melonJS/docs/melonjs/event/on.html"},"PZbul2vQvSkzllw3ae9BI":{"uri":"/melonJS/docs/melonjs/event/once.html"},"j4uY0QihhdngdW6JfENZQ":{"uri":"/melonJS/docs/melonjs/game.html"},"a0ww7PQuM0IiT_-6EU7tU":{"uri":"/melonJS/docs/melonjs/input.html"},"e7jJVZS-3fF8_IRqmMtMi":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD.html"},"4SdL6tIo-ulfqJggB6dcE":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/AXES.html"},"JTkAyhVZfoUla3WqGkuxH":{"uri":"/melonJS/docs/melonjs/input/GAMEPAD/BUTTONS.html"},"tRv4rJYVQMkP4d0dpSq8k":{"uri":"/melonJS/docs/melonjs/input/KEY.html"},"pnvNey0aRslJr1oALuoWR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#A"},"-a2BRbcGOxcWvAVAPvaG1":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ADD"},"FBLnBL7fjBiM8G7DcSbMi":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ALT"},"dxyNlMhq9kitZiXeWBXw4":{"uri":"/melonJS/docs/melonjs/input/KEY.html#B"},"SkkkozvPBDv_M7n_Ki9NW":{"uri":"/melonJS/docs/melonjs/input/KEY.html#BACK_SLASH"},"DmFDgu9ZPNJXDbWStG6Dk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#C"},"vzdI6rx46vUcBgQTFKZAV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CAPS_LOCK"},"gLf24Bbegg2ZHG0Cs-b9k":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CLOSE_BRACKET"},"Fv7Azu5Eu6ZKFtX9FRMKD":{"uri":"/melonJS/docs/melonjs/input/KEY.html#COMMA"},"eURB0nMMBQ8CC8bq6FRrR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#CTRL"},"SQAQBaiZjC2_KbrTgadq3":{"uri":"/melonJS/docs/melonjs/input/KEY.html#D"},"seaFrGJ1FZWt_FNzQ4fau":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DECIMAL"},"ovRNl9RKbU4zTZq87lKLK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DELETE"},"489rxzchVwxi1LL_PGnbM":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DIVIDE"},"HVoZKtL8g_sJiTNZpCb9Z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#DOWN"},"PaY6I9d3NV2pJJIQdDGGO":{"uri":"/melonJS/docs/melonjs/input/KEY.html#E"},"V11SnDgmYk117G20t8bCB":{"uri":"/melonJS/docs/melonjs/input/KEY.html#END"},"vvN8O03J0m8MLLReaHeX-":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ENTER"},"cEBt6ACcAQ66ChCvQj8HJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#ESC"},"oVoDbTN-ZNUhlk6xEEBQV":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F"},"ivgxD3wkh45JmIWo9FFi_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F1"},"HjrNV9mDpj0NkGlUVNhOI":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F10"},"UIpXtbe3EDXV-mvjEewDr":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F11"},"fe-nbwHGKxjeB4hQ4EMRN":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F12"},"_ooWKzT0WnoNaJl9vpF9p":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F2"},"kdM3ZoDfDH-yK5hh52W_p":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F3"},"k7RJF6yU_64qhkmwXg36Z":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F4"},"nuq7xiV0FvGwk1XxNldAx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F5"},"YxpmhO2BCKBlhuKRclqeq":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F6"},"u04UjeRzNrZU_ROmWPHB8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F7"},"JIBap0b9LJDlxuxHDvvK2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F8"},"Vu6unWM3l3Q-lNtzzrBO1":{"uri":"/melonJS/docs/melonjs/input/KEY.html#F9"},"HW_cKNcaPStTLanONLS5Y":{"uri":"/melonJS/docs/melonjs/input/KEY.html#FORWAND_SLASH"},"7LMiolDbSn1zz9K3PmVoO":{"uri":"/melonJS/docs/melonjs/input/KEY.html#G"},"FudmBqWYEzdRr9JYKZClP":{"uri":"/melonJS/docs/melonjs/input/KEY.html#GRAVE_ACCENT"},"24SICDPSZr2hutm9lpwPj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#H"},"exQzTLa4Pqc6XPRKup-QK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#HOME"},"IpY-V9-y2lPQDD-JqF9q2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#I"},"lVRwxeNFx6Osmu56dBpbj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#INSERT"},"Sp3GZjrhHRZaD6usWuTxt":{"uri":"/melonJS/docs/melonjs/input/KEY.html#J"},"9APuWrxIQKZnGF0AUHrZs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#K"},"VsNTCx2MQ8ZyIGd089ePH":{"uri":"/melonJS/docs/melonjs/input/KEY.html#L"},"XT772juV0RXTA4PU149gl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#LEFT"},"DzCve-HGsS7V9s-po0Cbj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#M"},"71pW7Z2E5SIKMarntcEDL":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MINUS"},"Vwd3-mmsF3zVAWuuS6jYx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#MULTIPLY"},"x5NC21bftyeTygbnpaO_f":{"uri":"/melonJS/docs/melonjs/input/KEY.html#N"},"NvbC59UzdcwuAa9txttK0":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM_LOCK"},"3DvbEW2V-1YJHvqlkW_M6":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM0"},"9TdC-oyjaegYmExR0lZ76":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM1"},"tkkCdR_mYrS6_avcu9Bln":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM2"},"199agavM0Wbb1rzXpLdVR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM3"},"5HzUDdxgo19ThTwZvhHDR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM4"},"fODUT3NPclVGyNxmwZabu":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM5"},"g9Bd4vmxe6rnBYK7ineDJ":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM6"},"4VxXswIEYbrHgYDOB9RmE":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM7"},"2Do5DmekMwhjXMQqEeCVt":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM8"},"CCnevEkO9ROMcp59K2aTx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUM9"},"WLp-HyUckP-UQiskVmBB0":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD0"},"YdUyUozB33n3JMBQgW_Zt":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD1"},"5Q8_sJZPZ3BgAS2c8lVkk":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD2"},"eG0YlxjovDzb0Ha_F90RK":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD3"},"OmX3uicsLXslxmKyy6Aa-":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD4"},"CYrnvonvWN8WZM3-j55z8":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD5"},"0owCu7uoHdWdxL6e2vBvb":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD6"},"elZ4wSE7hxlYtltaOsmBN":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD7"},"8Cv1KTWi1gCnUa_LjXD2u":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD8"},"ReOvLhIkw6QgcosqTO_1f":{"uri":"/melonJS/docs/melonjs/input/KEY.html#NUMPAD9"},"5iIRAmV_bKu0201DAzKh9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#O"},"bIrAfP7XOcVbi6-dyIyf1":{"uri":"/melonJS/docs/melonjs/input/KEY.html#OPEN_BRACKET"},"yEeklP3LEKUiK329qzCxU":{"uri":"/melonJS/docs/melonjs/input/KEY.html#P"},"Me-Hkn9ZK5h5uWPeOsGTx":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_DOWN"},"zhFK11ojckOM5POO5LOIs":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAGE_UP"},"8BTRM_qOTVEwoxLcRewXS":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PAUSE"},"vY34Pud04q5H_nv17fgGU":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PERIOD"},"XgWXplI2GdFmXgzkzLXwy":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PLUS"},"oNsJCMkvSEtUQv40vNbOR":{"uri":"/melonJS/docs/melonjs/input/KEY.html#PRINT_SCREEN"},"iu6UVu08iQm_z2lF4Imil":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Q"},"-4jdA2i6ds7TKm5ePE278":{"uri":"/melonJS/docs/melonjs/input/KEY.html#R"},"Z-LbtIy-5P8QzCS7Msoub":{"uri":"/melonJS/docs/melonjs/input/KEY.html#RIGHT"},"Id5FjCHGcjPk4asbytnP1":{"uri":"/melonJS/docs/melonjs/input/KEY.html#S"},"badNPKRlmn8Y-J8BdOsdd":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SCROLL_LOCK"},"cOmbyMdHx1PP09e-smAY0":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SEMICOLON"},"bgCCxTr5Ch-CDploLv964":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SHIFT"},"Ua4fCZ4HoJIcEAqgTasQl":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SINGLE_QUOTE"},"lc6c1tVhWC_wYFIfby9ej":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SPACE"},"zXAazTRc3QKX-zfZdhP85":{"uri":"/melonJS/docs/melonjs/input/KEY.html#SUBSTRACT"},"8f0SbY0tabo3aogh0Ccr2":{"uri":"/melonJS/docs/melonjs/input/KEY.html#T"},"Gi1hDwK5QFG3DZFhS8dMj":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TAB"},"TclSnDql-NkJnRuEjKeYu":{"uri":"/melonJS/docs/melonjs/input/KEY.html#TILDE"},"9HSsRbeWX3qeclYVUQRlF":{"uri":"/melonJS/docs/melonjs/input/KEY.html#U"},"rYEyhsswOqPZNOwcFjT1F":{"uri":"/melonJS/docs/melonjs/input/KEY.html#UP"},"iaT4jAJLMXjZej9-XUf7M":{"uri":"/melonJS/docs/melonjs/input/KEY.html#V"},"fOHAJhA6CEqz3HsW1qZJ_":{"uri":"/melonJS/docs/melonjs/input/KEY.html#W"},"oSfUwVUiOdkDVIygIy3Yu":{"uri":"/melonJS/docs/melonjs/input/KEY.html#WINDOW_KEY"},"UTj16NqygPYyHKUQvU26m":{"uri":"/melonJS/docs/melonjs/input/KEY.html#X"},"Dgys7BHQL5amaf7AmYVx9":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Y"},"OXkS7DZt5HDqPYzz5DSjS":{"uri":"/melonJS/docs/melonjs/input/KEY.html#Z"},"U_MjWn1f7R61Mj7bP5idn":{"uri":"/melonJS/docs/melonjs/input.html#keyBoardEventTarget"},"3sFHUnfJDd_wQIiWvu-Q4":{"uri":"/melonJS/docs/melonjs/input.html#locked"},"-7lkBzWsdSVjS6e6aRoL9":{"uri":"/melonJS/docs/melonjs/input.html#pointer"},"MuS9AZkqfBA0p112yirbj":{"uri":"/melonJS/docs/melonjs/input.html#pointerEventTarget"},"0Ilaer3gSBFTUPNhTknoQ":{"uri":"/melonJS/docs/melonjs/input.html#preventDefault"},"ZdZUxUrIIGk4rOvOJ38vp":{"uri":"/melonJS/docs/melonjs/input.html#setGamepadMapping"},"H20i14scYlJsYHTsGqpaS":{"uri":"/melonJS/docs/melonjs/input.html#throttlingInterval"},"dAW2MakCl1fLTpZ0vLrf6":{"uri":"/melonJS/docs/melonjs/input/bindGamepad.html"},"kiF3fLEw4AIT2lAtYXzeN":{"uri":"/melonJS/docs/melonjs/input/bindKey.html"},"ItDrFXS4sbQQkOJpcXNhc":{"uri":"/melonJS/docs/melonjs/input/bindPointer.html"},"Az7N2OQGmdcILgMOtU2jQ":{"uri":"/melonJS/docs/melonjs/input/exitPointerLock.html"},"rWNDczoqpByCVgdmRheV5":{"uri":"/melonJS/docs/melonjs/input/getBindingKey.html"},"ktbvfMxKRLPrFKAvy5tU-":{"uri":"/melonJS/docs/melonjs/input/globalToLocal.html"},"N2xuB5OFYceKdGgoEwc7D":{"uri":"/melonJS/docs/melonjs/input/hasActiveEvents.html"},"GhRf7Y9be7PqCtJzyqmR1":{"uri":"/melonJS/docs/melonjs/input/hasRegisteredEvents.html"},"JHh-gNlRQN5832K5Nd5pa":{"uri":"/melonJS/docs/melonjs/input/isKeyPressed.html"},"5Tc-oQ1_SyiM67xPK9U4L":{"uri":"/melonJS/docs/melonjs/input/keyStatus.html"},"jjfH8G80GucNdVnX2Pb0E":{"uri":"/melonJS/docs/melonjs/input/registerPointerEvent.html"},"AZ5UY6zIDAAqGvW1vO22z":{"uri":"/melonJS/docs/melonjs/input/releaseAllPointerEvents.html"},"T2L_E2peZc4gkJPlV0yJY":{"uri":"/melonJS/docs/melonjs/input/releasePointerEvent.html"},"gqOMaiMlOwo2arBZNfpRW":{"uri":"/melonJS/docs/melonjs/input/requestPointerLock.html"},"vyABdBy6YP6nd2qy6dSP6":{"uri":"/melonJS/docs/melonjs/input/setGamepadDeadzone.html"},"c99uqoUPyG2Sjd-WtT0WZ":{"uri":"/melonJS/docs/melonjs/input/setTouchAction.html"},"VNYRe_rRIShC8-jA8ZyxR":{"uri":"/melonJS/docs/melonjs/input/triggerKeyEvent.html"},"zEQGcEswMxvDfRFIzxh65":{"uri":"/melonJS/docs/melonjs/input/unbindGamepad.html"},"-m2CZm02tIu3w8oBHqitY":{"uri":"/melonJS/docs/melonjs/input/unbindKey.html"},"xkVJux4N0e80wFtb-0ssv":{"uri":"/melonJS/docs/melonjs/input/unbindPointer.html"},"mqvkOMXDIG4TFa4UAq_X4":{"uri":"/melonJS/docs/melonjs/input/unlockKey.html"},"wTb0SUxhmXcAy5J-E_vhp":{"uri":"/melonJS/docs/melonjs/level.html"},"8ds6JBaWC2XXWdYAsPY_G":{"uri":"/melonJS/docs/melonjs/level.html#add"},"AOfcIQWTdRMZ7o03s6L1Q":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevel"},"gwMOJ56k5riM5gyd_d0MU":{"uri":"/melonJS/docs/melonjs/level.html#getCurrentLevelId"},"Z7FzLEBINE8MNnnThWg6P":{"uri":"/melonJS/docs/melonjs/level.html#levelCount"},"F_5KUl3A9QfRmiwBT8pvy":{"uri":"/melonJS/docs/melonjs/level.html#load"},"N91MIp4NIZ66mPUKsKCfC":{"uri":"/melonJS/docs/melonjs/level.html#next"},"9Pf-FEU6z-LqoQxaT1Zuv":{"uri":"/melonJS/docs/melonjs/level.html#previous"},"Zri8Hin7yKfXFT9Rv3fjV":{"uri":"/melonJS/docs/melonjs/level.html#reload"},"BnthQeC1do0Efbhx9gjxX":{"uri":"/melonJS/docs/melonjs/loader.html"},"a34J8xRlqVeIEmlmGL0DO":{"uri":"/melonJS/docs/melonjs/loader/Asset.html"},"VlxBA59RwIv0WQufZ6Hvf":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#data"},"itva87Ke7q4p8llV4XRVP":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#name"},"2TKcUFAAKx9okqpaiSDuJ":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#src"},"jAGniXqTXp2ymbCK0eSo9":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#stream"},"WNOB47-7tKROIbqYqKMsq":{"uri":"/melonJS/docs/melonjs/loader/Asset.html#type"},"X9ZxH_1usNd_SqJPXaQ4z":{"uri":"/melonJS/docs/melonjs/loader.html#crossOrigin"},"5rqcZMVRWO0035816pQNW":{"uri":"/melonJS/docs/melonjs/loader.html#onload"},"MGx1fiR-YvGLemPvTzJkR":{"uri":"/melonJS/docs/melonjs/loader.html#onProgress"},"8kYvvTBo4PGg91rNL4HmL":{"uri":"/melonJS/docs/melonjs/loader.html#withCredentials"},"8Ob-pMO1dsOxuT--IbSwG":{"uri":"/melonJS/docs/melonjs/loader/getBinary.html"},"ZpsYqpwi-SZ1cCVsvRfeb":{"uri":"/melonJS/docs/melonjs/loader/getImage.html"},"BmNMhh3AeFql4NmrkUWSa":{"uri":"/melonJS/docs/melonjs/loader/getJSON.html"},"YKOQ8j-u828n0PnE68jbU":{"uri":"/melonJS/docs/melonjs/loader/getTMX.html"},"wep3joBh7L_1k8Po2uns7":{"uri":"/melonJS/docs/melonjs/loader/load.html"},"8DbFtGG4zWDdRb03kAEiX":{"uri":"/melonJS/docs/melonjs/loader/preload.html"},"bC7XrDAZthyvdE0feRibJ":{"uri":"/melonJS/docs/melonjs/loader/setBaseURL.html"},"ltNanY6u19fjFig6t0Rod":{"uri":"/melonJS/docs/melonjs/loader/setParser.html"},"y8FRY5DiHENi9UVwYuf1o":{"uri":"/melonJS/docs/melonjs/loader/unload.html"},"MB3DuEn2dEy7S-qGNzrQz":{"uri":"/melonJS/docs/melonjs/loader/unloadAll.html"},"629rC1S5ZAyPImL6bZ15U":{"uri":"/melonJS/docs/melonjs/Math.html"},"cjPgh4iDsdeWxMG_3cW98":{"uri":"/melonJS/docs/melonjs/Math.html#DEG_TO_RAD"},"GoqfXCaOfWYm1vsVn6SeU":{"uri":"/melonJS/docs/melonjs/Math.html#EPSILON"},"FqaETYlJ_qvYRgh1X-wLC":{"uri":"/melonJS/docs/melonjs/Math.html#ETA"},"3BKr6iiEemOZKf1ffZi60":{"uri":"/melonJS/docs/melonjs/Math.html#RAD_TO_DEG"},"4WQS9FyFbwZvys8zVGPwB":{"uri":"/melonJS/docs/melonjs/Math.html#TAU"},"RltV2n_X6gEchQK_7bgaS":{"uri":"/melonJS/docs/melonjs/Math/clamp.html"},"uI8NbqMo_44Tgci3SDe7R":{"uri":"/melonJS/docs/melonjs/Math/degToRad.html"},"TsAMRIh38Y0MAq6ohQ41h":{"uri":"/melonJS/docs/melonjs/Math/isPowerOfTwo.html"},"w6r4fkwC38sZEoHF5AOAp":{"uri":"/melonJS/docs/melonjs/Math/nextPowerOfTwo.html"},"-V45CcibBFQrT1zzPzZrs":{"uri":"/melonJS/docs/melonjs/Math/radToDeg.html"},"jg2d49C7hzIMj8X_Xm4ba":{"uri":"/melonJS/docs/melonjs/Math/random.html"},"wlcs5PdI5huE0PgynboFp":{"uri":"/melonJS/docs/melonjs/Math/randomFloat.html"},"bMp2xtkJcHjO1wa89Fu7k":{"uri":"/melonJS/docs/melonjs/Math/round.html"},"Heg9WfI8840giQ1hiiBmr":{"uri":"/melonJS/docs/melonjs/Math/toBeCloseTo.html"},"M0tXm4kDPfykEIkGcXk52":{"uri":"/melonJS/docs/melonjs/Math/weightedRandom.html"},"rREksqce1xVmffhVq1fob":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html"},"XbQvpFroxx0AHfNV9JJs7":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angle"},"Vl2GKf08OwvuxNb3KR8j6":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#angleVariation"},"2OtlfmwVmLN5z68JqDXbJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#blendMode"},"C0e_DTAJiUpu2yrsPYfQt":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#duration"},"7QxHbnE1CODb_NGpGH0Ui":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#floating"},"Ig2x0FNeJYVHm4uJZ4IBI":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#followTrajectory"},"Q7SS9dcxk_DJhRzBtCjjP":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#framesToSkip"},"rw3jPeluTgaX6B_EF4mFj":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#frequency"},"SqihSuCV98oC9YYktgocs":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#gravity"},"23JBAU031nFDu-B4lexzR":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#height"},"yUYiBMthl1aff2tQ3HZ-B":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#image"},"ZgrW_Fx3XpK_F6_Syo6Lq":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxEndScale"},"FSE-nhxqycd7uKDm-WC-u":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxLife"},"ICsG6JxP8XgD-LOsAOXil":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxParticles"},"3YfgX7_xZqfOeoOiEkxmg":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxRotation"},"rxHQf757MarTcZ7FMqZNg":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#maxStartScale"},"4_9JgBmQPXh9HV9xTky-u":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minEndScale"},"8Ls_nsmh75Whv905kEg2e":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minLife"},"o7W1ByadZHYMwnkRWpOj2":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minRotation"},"lLDU1h5vobgBMyJBFxuzc":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#minStartScale"},"zmjON-FnNP_wWXT8Wnftr":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#onlyInViewport"},"dpgyFdFFdIm5SznWWr6ro":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speed"},"dE2RzcUSaY71HcYWIQea1":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#speedVariation"},"1nVmnsMVvtNtMXwHqDylF":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureAdditive"},"TTGCw8yUj02j8vJAikGwv":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#textureSize"},"m3bp4Hk0iwgr_jWEcfPUY":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#tint"},"MkXgDSsuHo0OhECZG78-Q":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#totalParticles"},"XHIZaWsTQIhmXsbNVxAIv":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#width"},"TUsFXENIoipcBkX8W30PF":{"uri":"/melonJS/docs/melonjs/ParticleEmitterSettings.html#wind"},"9USi3XNBkWYcvFvJ1exn4":{"uri":"/melonJS/docs/melonjs/plugin.html"},"qJeUOaoswRXSYTTP9D0gO":{"uri":"/melonJS/docs/melonjs/plugin/Base.html"},"m607v-zlHjyigQtH2SXDI":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#app"},"0Zm9ciYSizRa-ZUwrB34n":{"uri":"/melonJS/docs/melonjs/plugin/Base.html#version"},"bXKtU_3nivwfwC0LDV8Va":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html"},"WaX3yklCeFxIJKB8u6ucB":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#app"},"HgcxAjra-jz6VgwanzkIr":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#version"},"8zGPwwmpeG8v6s3v4cKKG":{"uri":"/melonJS/docs/melonjs/plugin/BasePlugin.html#constructor"},"G4h6RYurgrfu3bC27-_9V":{"uri":"/melonJS/docs/melonjs/plugin.html#cache"},"IRBwT4myEepEIgQ-3EnL7":{"uri":"/melonJS/docs/melonjs/plugin/get.html"},"rSTKGjq_phkMA7LkQmeOk":{"uri":"/melonJS/docs/melonjs/plugin/patch.html"},"JpCtNyZoWAn-iLWuPPTqD":{"uri":"/melonJS/docs/melonjs/plugin/register.html"},"3EKKAgPJmHif7J29wbiOU":{"uri":"/melonJS/docs/melonjs/pool.html"},"LdpgXvTYzF_Me20KZqK2V":{"uri":"/melonJS/docs/melonjs/save.html"},"hds290Nb4ivU-oscVh71y":{"uri":"/melonJS/docs/melonjs/save.html#add"},"1gvzt6oY6SLXGQAt4O23Z":{"uri":"/melonJS/docs/melonjs/save.html#remove"},"8Os7STXmIvLQ9NtBkkR7y":{"uri":"/melonJS/docs/melonjs/state.html"},"oyPy3JQsVSmIfb-JtBsvh":{"uri":"/melonJS/docs/melonjs/state.html#CREDITS"},"vVmIVblVYHi_wyZt-eOvY":{"uri":"/melonJS/docs/melonjs/state.html#DEFAULT"},"OHQduiY6guCweUG8Qxeqp":{"uri":"/melonJS/docs/melonjs/state.html#GAME_END"},"N9r8UYDWzxun9brFiLNfY":{"uri":"/melonJS/docs/melonjs/state.html#GAMEOVER"},"ng12x94ENJqrZEfRxXiz2":{"uri":"/melonJS/docs/melonjs/state.html#LOADING"},"tEuiNneqmOZSfGnbpkUmj":{"uri":"/melonJS/docs/melonjs/state.html#MENU"},"a-r6EstPBq1AAevcxLG5-":{"uri":"/melonJS/docs/melonjs/state.html#PLAY"},"XyKOtFLfN8yntxKismOQf":{"uri":"/melonJS/docs/melonjs/state.html#READY"},"1MZIRCjKY-Lgy4gEEuV9x":{"uri":"/melonJS/docs/melonjs/state.html#SCORE"},"c27Zeej0KQ4TjiZt4eGmg":{"uri":"/melonJS/docs/melonjs/state.html#SETTINGS"},"DBEfXY38DA66GVJXXOtzf":{"uri":"/melonJS/docs/melonjs/state.html#USER"},"D7eYfi--d1l-Xd7BWuhSA":{"uri":"/melonJS/docs/melonjs/state.html#change"},"MaiHLoDfRq_qhWKuZIvwA":{"uri":"/melonJS/docs/melonjs/state.html#current"},"LFTJ5DiTXsASpuNoduArW":{"uri":"/melonJS/docs/melonjs/state.html#isCurrent"},"XHujI4ezD0XM6E5ZFCZ-l":{"uri":"/melonJS/docs/melonjs/state.html#isPaused"},"0LaM7V3gdE7pEm1uKmmCE":{"uri":"/melonJS/docs/melonjs/state.html#isRunning"},"TxtPv2gskCYe4qYqBVdQK":{"uri":"/melonJS/docs/melonjs/state.html#pause"},"UTpVvUWib-9GpkzRmp08h":{"uri":"/melonJS/docs/melonjs/state.html#restart"},"gR8p3QcJBzWdxOfqu5_kS":{"uri":"/melonJS/docs/melonjs/state.html#resume"},"6WmUmOTKfdGlxgg_l0mtH":{"uri":"/melonJS/docs/melonjs/state.html#set"},"feYi2tuPjdBIpNz2rtbOD":{"uri":"/melonJS/docs/melonjs/state.html#set_"},"NSFn8WrHBrG5no5EZA_I1":{"uri":"/melonJS/docs/melonjs/state.html#setTransition"},"nHvfn9aqYOTQ1R_JZyqPC":{"uri":"/melonJS/docs/melonjs/state.html#stop"},"A8Kf_BpyLRfbf2ziCFYFO":{"uri":"/melonJS/docs/melonjs/state.html#transition"},"lmwLAAZuqfWck3cHWlPyH":{"uri":"/melonJS/docs/melonjs/timer.html"},"VQt79jCwlVzLg8rSCcX15":{"uri":"/melonJS/docs/melonjs/TMXUtils.html"},"nyjMdvSfkIFJCs7SlD9ct":{"uri":"/melonJS/docs/melonjs/TMXUtils/applyTMXProperties.html"},"53f4Q4X5IBi34Y7pRHx9n":{"uri":"/melonJS/docs/melonjs/TMXUtils/decode.html"},"3S2LcDsmio1uOJz4Was1O":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeBase64AsArray.html"},"SXjTPjawPnH2EmRkjvKrd":{"uri":"/melonJS/docs/melonjs/TMXUtils/decodeCSV.html"},"6Ljsu1RU2dFWYVMVCOXY5":{"uri":"/melonJS/docs/melonjs/TMXUtils/decompress.html"},"QLdXX49SzuqUVIH3wfmex":{"uri":"/melonJS/docs/melonjs/TMXUtils/parse.html"},"_RH3HFjN_k3wAUyUTSaz0":{"uri":"/melonJS/docs/melonjs/TMXUtils/setInflateFunction.html"},"yBZmhExTnl5axJ9qzVJIn":{"uri":"/melonJS/docs/melonjs/utils.html"},"cnSCRAaAP7LYwWK8jnFGt":{"uri":"/melonJS/docs/melonjs/utils/agent.html"},"0VEsu9X8IHMU7YdKILXgg":{"uri":"/melonJS/docs/melonjs/utils/agent/prefixed.html"},"GYovVBkj-uAm9NAaZsYmg":{"uri":"/melonJS/docs/melonjs/utils/agent/setPrefixed.html"},"v6QD_FRO3TBS0OQ8kA_HF":{"uri":"/melonJS/docs/melonjs/utils/array.html"},"Jq4akCSRGK9t_qDBSP9ry":{"uri":"/melonJS/docs/melonjs/utils/array/random.html"},"4PhNSBn8u39p-Uhj5dWIL":{"uri":"/melonJS/docs/melonjs/utils/array/remove.html"},"4mPKyO8eeLYYJdNVOmcHu":{"uri":"/melonJS/docs/melonjs/utils/array/weightedRandom.html"},"KRLOQecB2VzkQZRwMATJO":{"uri":"/melonJS/docs/melonjs/utils/file.html"},"aQnJ7hz34RglYP9OungV_":{"uri":"/melonJS/docs/melonjs/utils/file/getBasename.html"},"s1loQD6oIKK20mONhH-uM":{"uri":"/melonJS/docs/melonjs/utils/file/getExtension.html"},"9eD5c6rjRCJjjdTnln1NF":{"uri":"/melonJS/docs/melonjs/utils/file/getPath.html"},"yUdJGkfXTew3DeWcEvvj2":{"uri":"/melonJS/docs/melonjs/utils/function.html"},"2zqfl1C_pb6GEXyzpN68r":{"uri":"/melonJS/docs/melonjs/utils/function/defer.html"},"hIpvicwb2CZTgD40R1J5-":{"uri":"/melonJS/docs/melonjs/utils/function/throttle.html"},"I9-fwBH7Pt-Ml6B_ygrcG":{"uri":"/melonJS/docs/melonjs/utils/string.html"},"yVCLVQPfVqUJsZ2zQKP24":{"uri":"/melonJS/docs/melonjs/utils/string/capitalize.html"},"wmriIvfHWcgCqyMj6poBf":{"uri":"/melonJS/docs/melonjs/utils/string/isBoolean.html"},"88rE24hkOfFGo1CGfu7JO":{"uri":"/melonJS/docs/melonjs/utils/string/isDataUrl.html"},"JX53MnqR568tlytu0GwDT":{"uri":"/melonJS/docs/melonjs/utils/string/isNumeric.html"},"NaAwjdbQT4N7cP4bHmObC":{"uri":"/melonJS/docs/melonjs/utils/string/toHex.html"},"edI6bJgtF7qhJzVQ5lKrp":{"uri":"/melonJS/docs/melonjs/utils/checkVersion.html"},"Dja50hLWnvHcfuHjGjNoN":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html"},"JIQodYjYaJZmmP0TcszHQ":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debug"},"Aeq99zmfNQpYxWWgFcRTU":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#debugToggleKey"},"h6T5N6_obO6uCp1Dy4aqd":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#hitbox"},"Jb2bqbeNlYqxlqVXbTxBG":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#quadtree"},"pW0IH-376ge11uSWGdNNI":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#velocity"},"Zl-vvleggvrzKpRc_coBq":{"uri":"/melonJS/docs/melonjs/utils/getUriFragment.html#webgl"},"ss84n1TxxeVXjzzUoUxwu":{"uri":"/melonJS/docs/melonjs/video.html"},"lnVXyp822MtziiC7Enj0g":{"uri":"/melonJS/docs/melonjs/video.html#renderer"},"2i4GLL3s252cjJAXyMKsg":{"uri":"/melonJS/docs/melonjs/video/createCanvas.html"},"gNH1ICmP0QGcFxr1SGhWm":{"uri":"/melonJS/docs/melonjs/video/getParent.html"},"GfqIaevGcbPoM3DW05aTG":{"uri":"/melonJS/docs/melonjs/video/init.html"},"69SpiLtEWBYIEb74rvuR7":{"uri":"/melonJS/docs/melonjs/Application.html"},"DWLiuhz-hcNLIvEGM2MwQ":{"uri":"/melonJS/docs/melonjs/Application/Settings.html"},"fzO5I7sqUUpN6shokbCB7":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#antiAlias"},"7mMriBl3WR3GTVfLzbwJa":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#consoleHeader"},"mOdIZBbqNsWBv8t63KI4F":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#depthTest"},"2ZUJdec_30St_ljLBDrdx":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#parent"},"hFrKcJb9S4BRclrBY1x81":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#powerPreference"},"UMzEeetTkN1U2CYLzrcID":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#preferWebGL1"},"E5fDnuXqcyhay2y9EhnK_":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#renderer"},"e3DA-xyXIvG41-Rbjeqa1":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scale"},"tPCPzLa7vX4ZZ3-nMNHJL":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleMethod"},"MW3yT6T5Tfqng0TGySj00":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#scaleTarget"},"Cf38QBzhCguwTF-qlMS6f":{"uri":"/melonJS/docs/melonjs/Application/Settings.html#transparent"},"N4_mPGv_ebYfg93WPBNSP":{"uri":"/melonJS/docs/melonjs/Application.html#isInitialized"},"fZ6Q_9p8U-h3uaWWlXg9G":{"uri":"/melonJS/docs/melonjs/Application.html#lastUpdate"},"iC997d4pH3tvDnQHSy09g":{"uri":"/melonJS/docs/melonjs/Application.html#mergeGroup"},"eukpNrPE5h5eKVFkwTO0d":{"uri":"/melonJS/docs/melonjs/Application.html#parentElement"},"6WdQ8maCkpGp81lafvcas":{"uri":"/melonJS/docs/melonjs/Application.html#pauseOnBlur"},"TDAmItVSRtvTV5KzAIhAJ":{"uri":"/melonJS/docs/melonjs/Application.html#renderer"},"DRh7sCt6MBrJqBAp06Jcx":{"uri":"/melonJS/docs/melonjs/Application.html#resumeOnFocus"},"RlZw2zmRVQSCI-HKn0mlR":{"uri":"/melonJS/docs/melonjs/Application.html#settings"},"MvywuyGYF1nIqJZDHP6ZL":{"uri":"/melonJS/docs/melonjs/Application.html#sortOn"},"w-YB76tDumFO6HuUR7q1q":{"uri":"/melonJS/docs/melonjs/Application.html#stopOnBlur"},"9KuBwA-ocQWyljnjv-8zw":{"uri":"/melonJS/docs/melonjs/Application.html#viewport"},"Xa0YcObjTbW-oF5W58-Xe":{"uri":"/melonJS/docs/melonjs/Application.html#world"},"gQWJ8o9_rtDJXoWejKW3L":{"uri":"/melonJS/docs/melonjs/Application.html#constructor"},"1o77U6IblX1djtFirN8jr":{"uri":"/melonJS/docs/melonjs/Application.html#draw"},"YtipBYgDNoFu3LUslrJcX":{"uri":"/melonJS/docs/melonjs/Application.html#getParentElement"},"0rk_kADPDwTTKQqoNa1UZ":{"uri":"/melonJS/docs/melonjs/Application.html#init"},"8dlBkc1pkbtPXb34fA6EP":{"uri":"/melonJS/docs/melonjs/Application.html#onLevelLoaded"},"aff9dn6KSYDTO7vJqFCyf":{"uri":"/melonJS/docs/melonjs/Application.html#repaint"},"bdBwDjwwigJMMpMLuV9Sf":{"uri":"/melonJS/docs/melonjs/Application.html#reset"},"D85Ld6W_qxB1uMqO2OAyO":{"uri":"/melonJS/docs/melonjs/Application.html#update"},"AEGgxzrtD41ddGcAPC8B_":{"uri":"/melonJS/docs/melonjs/Application.html#updateFrameRate"},"hrDZTbblStVdV0_-1pqi_":{"uri":"/melonJS/docs/melonjs/BitmapText.html"},"gAolvs0b8lx5LeJkjRUOM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alpha"},"WO9vl2ImfHbiF8BXZEXSY":{"uri":"/melonJS/docs/melonjs/BitmapText.html#alwaysUpdate"},"me7UrxnR511Y6ovCxMBnD":{"uri":"/melonJS/docs/melonjs/BitmapText.html#ancestor"},"arjcOEHfysBZl_kfpIRbj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#anchorPoint"},"KVhUVdP5D2JcKa6kc-gGW":{"uri":"/melonJS/docs/melonjs/BitmapText.html#autoTransform"},"VCeZkCG9tpTpkKJ4dwD31":{"uri":"/melonJS/docs/melonjs/BitmapText.html#blendMode"},"31u8_CKxjPvRo3wPIQhzV":{"uri":"/melonJS/docs/melonjs/BitmapText.html#body"},"OQwoF-yTcr8Fd-UuB6P3J":{"uri":"/melonJS/docs/melonjs/BitmapText.html#bottom"},"sKuowDpZW3PhGNE_UoBUn":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerX"},"D7cm5a4f5OlIgIRxA4vQx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerY"},"8twfGs0hpx1zEJGiA9XWI":{"uri":"/melonJS/docs/melonjs/BitmapText.html#currentTransform"},"8F9nZ0SumS_gVy2MqsTtz":{"uri":"/melonJS/docs/melonjs/BitmapText.html#depth"},"x5JmyvnqWw0F0ecPw_XQ9":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fillStyle"},"PjxsS9WFO8f_ShaCYvzpK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#floating"},"5TOkUox_XEoaWuLpw2TBn":{"uri":"/melonJS/docs/melonjs/BitmapText.html#GUID"},"DIXHltf8AOdSs54fejUb4":{"uri":"/melonJS/docs/melonjs/BitmapText.html#height"},"SHUDJQSE6AwY-sPCZJa8E":{"uri":"/melonJS/docs/melonjs/BitmapText.html#inViewport"},"erwsk2c3L4cqupvB5oGTP":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isDirty"},"I_havCgWV_2ZGHqEZ1NKC":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedX"},"nU2RAd7tB6QoKTh94Bccj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFlippedY"},"f-LCSVHIGqdYdR1kdLdNE":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFloating"},"oqAtkJHRV4bcTGeAVAlGb":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isKinematic"},"iQXFIoSEILYSzFRsSrtj0":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isPersistent"},"FEOT1cUOTReBbU4xnPARA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#left"},"NW_cSXN31zcyBNeUt-JsL":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lineHeight"},"aV-9Sv5N8ORNFXyXFJAsi":{"uri":"/melonJS/docs/melonjs/BitmapText.html#mask"},"WK3ckbbk9aYm2yj3SbKDg":{"uri":"/melonJS/docs/melonjs/BitmapText.html#name"},"omdq2mVMC3H_O_3T-NMmx":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onVisibilityChange"},"1435ThasTN-sEzz54UQMM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#points"},"nu9tqbZYG9w0z2wBMYhti":{"uri":"/melonJS/docs/melonjs/BitmapText.html#pos"},"Kx_44nFYWJFDCJ3vpKyFP":{"uri":"/melonJS/docs/melonjs/BitmapText.html#right"},"TR24YWh-Q4xQUMTV_rYeH":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shader"},"6VG1n7asYYgnO2fUGi6b-":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textAlign"},"1U_DKJ_bCtmReJDJaw0SL":{"uri":"/melonJS/docs/melonjs/BitmapText.html#textBaseline"},"HmeiWrq4Re2tL8Co-aUGK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#tint"},"SxWqQkDmvepm2SiN8Ls3z":{"uri":"/melonJS/docs/melonjs/BitmapText.html#top"},"An1AsKEiDh0TzkZccMBlv":{"uri":"/melonJS/docs/melonjs/BitmapText.html#type"},"CJC-x5w9U0Br8L35z5fqm":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateWhenPaused"},"B8qelHZflEjRB09KCcsB8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#width"},"_IZOZGBzB0ZYZbR_PyBhf":{"uri":"/melonJS/docs/melonjs/BitmapText.html#wordWrapWidth"},"o5_eLBzMT-6X6s4I1ZYgj":{"uri":"/melonJS/docs/melonjs/BitmapText.html#_text"},"WQPf9hwyYmyBN04sBlNSA":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontData"},"SWxqyggnHg5RCzBYrllOn":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontImage"},"n060DRC1CtnzdkV-_BC3P":{"uri":"/melonJS/docs/melonjs/BitmapText.html#fontScale"},"hbSJK8AB8W9-n2Jdz_NPG":{"uri":"/melonJS/docs/melonjs/BitmapText.html#angleTo"},"5R0T_on_jzwScC02aBLU8":{"uri":"/melonJS/docs/melonjs/BitmapText.html#centerOn"},"owA5fIhtSn2vdaEVIBDnI":{"uri":"/melonJS/docs/melonjs/BitmapText.html#clone"},"0qiAwXedFp5o7sLCBcfpk":{"uri":"/melonJS/docs/melonjs/BitmapText.html#constructor"},"qrfKrgqJSMXajU-mEW6Er":{"uri":"/melonJS/docs/melonjs/BitmapText.html#contains"},"aJhOHGFLLGif9YUm3L0J3":{"uri":"/melonJS/docs/melonjs/BitmapText.html#copy"},"YwroKiVCyj2_tSLFCsxQl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#distanceTo"},"t-nJ8V7s01LzqNEpZxQ_b":{"uri":"/melonJS/docs/melonjs/BitmapText.html#draw"},"fgyT20vT6nrLJXKBH3pkK":{"uri":"/melonJS/docs/melonjs/BitmapText.html#equals"},"iRxH4o65GT4bbcBXLyELy":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipX"},"NBLY4AbzNAk7c1A23sOd5":{"uri":"/melonJS/docs/melonjs/BitmapText.html#flipY"},"z7_1ksDTVxCArqGoh4pWp":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getAbsolutePosition"},"dBME1zP4ZD0JKp_Rnh5rp":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getBounds"},"SSme9V7tuWq8_lCj9qLdU":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getIndices"},"b1IbcxbLN6KXqMFmBT3Ru":{"uri":"/melonJS/docs/melonjs/BitmapText.html#getOpacity"},"f0dshtkvlORdL0HV7dj4r":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isConvex"},"NRrQtJHXtaupvcWz5jEDD":{"uri":"/melonJS/docs/melonjs/BitmapText.html#isFinite"},"hoO7usegr4I4DAAfnbkie":{"uri":"/melonJS/docs/melonjs/BitmapText.html#lookAt"},"mvLguLv75oHYE2xTFIgZl":{"uri":"/melonJS/docs/melonjs/BitmapText.html#measureText"},"HgcwXyuuI_btAzNUrnUqM":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onCollision"},"vxXTgvuegixenz-9dNusS":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onDestroyEvent"},"rt8xdWWD85hIXJld08vHt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#overlaps"},"O0BGtF2KixiVUeafl7HHp":{"uri":"/melonJS/docs/melonjs/BitmapText.html#postDraw"},"fjcjN-Tp81JQkWG31A4uJ":{"uri":"/melonJS/docs/melonjs/BitmapText.html#preDraw"},"PsVViBcPYnJMaaAqKZDSi":{"uri":"/melonJS/docs/melonjs/BitmapText.html#recalc"},"Mkj_x1Cb185ATiVeEJiox":{"uri":"/melonJS/docs/melonjs/BitmapText.html#resize"},"rx5688mBh7y6EJgrqfyDz":{"uri":"/melonJS/docs/melonjs/BitmapText.html#rotate"},"6Un63jCvK8_6Oq6RLhtEt":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scale"},"bHhlTRepzr7JwfzaKyDeF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#scaleV"},"0TUg2kc4srhf5oA3sAxhz":{"uri":"/melonJS/docs/melonjs/BitmapText.html#set"},"iI9BXc7-5S5QgtG1Rh6Vy":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setOpacity"},"iZIWeEIzAYD9Zv1bM-SQ4":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setShape"},"9yBTcfIOZSnex40b1S4ZR":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setText"},"pOj0QNfhbIhnP9ec48peF":{"uri":"/melonJS/docs/melonjs/BitmapText.html#setVertices"},"zUCIogeI8uAMFdXWeENiP":{"uri":"/melonJS/docs/melonjs/BitmapText.html#shift"},"VbRL3mM4T_es4OfwkiwUH":{"uri":"/melonJS/docs/melonjs/BitmapText.html#to2d"},"_TX-7k8hmZlzzvnDi6d-2":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toIso"},"w5bGk-JRWLwjSGSXY47Rq":{"uri":"/melonJS/docs/melonjs/BitmapText.html#toPolygon"},"QhzFKkw6AKl3nCZFb0G8Y":{"uri":"/melonJS/docs/melonjs/BitmapText.html#transform"},"GdSI3N55hllxxvDU1bBON":{"uri":"/melonJS/docs/melonjs/BitmapText.html#translate"},"Mm6fQWDYn0R7UF4nlYNgY":{"uri":"/melonJS/docs/melonjs/BitmapText.html#union"},"11EZFjj33Q9yAlT91hwc0":{"uri":"/melonJS/docs/melonjs/BitmapText.html#update"},"SEHb_2fA_0RrW_rGK2PU7":{"uri":"/melonJS/docs/melonjs/BitmapText.html#updateBounds"},"cvm5WnLZceZEfAGoJaGku":{"uri":"/melonJS/docs/melonjs/BitmapText.html#onAnchorUpdate"},"2UsXE_f6VfM1bN05lW8Zp":{"uri":"/melonJS/docs/melonjs/Body.html"},"3phwSQmXka5n9aZIjDCNl":{"uri":"/melonJS/docs/melonjs/Body.html#ancestor"},"7JXFDANEJNu1mAA-KOWVb":{"uri":"/melonJS/docs/melonjs/Body.html#bounce"},"EZiQuVidEqv2ytaLMDc9f":{"uri":"/melonJS/docs/melonjs/Body.html#bounds"},"OuWmH98NMbCX4s5MfvgJv":{"uri":"/melonJS/docs/melonjs/Body.html#collisionType"},"NZjKOiph9JlFarVvfbIIz":{"uri":"/melonJS/docs/melonjs/Body.html#falling"},"VvVk9_9_qWNKo_3uZiavy":{"uri":"/melonJS/docs/melonjs/Body.html#force"},"oSXdVvksbK_9c8fsf86bo":{"uri":"/melonJS/docs/melonjs/Body.html#friction"},"3Kl9EO3n7blplgv-zhssg":{"uri":"/melonJS/docs/melonjs/Body.html#gravityScale"},"i17F0MjNltFs3Wd3s-n-u":{"uri":"/melonJS/docs/melonjs/Body.html#ignoreGravity"},"ud145imsg5t7IjYBzWRO7":{"uri":"/melonJS/docs/melonjs/Body.html#isStatic"},"gDMQlFKPLozBJhAW4ShnL":{"uri":"/melonJS/docs/melonjs/Body.html#jumping"},"yApuaZIXfPFsyQVUIxA1D":{"uri":"/melonJS/docs/melonjs/Body.html#mass"},"2wVohmqe9cARAdP_UV7Ls":{"uri":"/melonJS/docs/melonjs/Body.html#maxVel"},"aY17UW7MxCTLSoEXHEKXO":{"uri":"/melonJS/docs/melonjs/Body.html#vel"},"cPNqw7yAngJwu6HUi33rW":{"uri":"/melonJS/docs/melonjs/Body.html#addShape"},"flkNQ3ObbFJvlS1ZSU7BF":{"uri":"/melonJS/docs/melonjs/Body.html#addVertices"},"mHtMaNX2JNdBbrIXN_Se_":{"uri":"/melonJS/docs/melonjs/Body.html#constructor"},"G3iSCrlioh342ZFMFtbtN":{"uri":"/melonJS/docs/melonjs/Body.html#contains"},"zL0X_KRUgWQNFvZavjDak":{"uri":"/melonJS/docs/melonjs/Body.html#forEach"},"NZa4xv1kqslFqtODcdBkR":{"uri":"/melonJS/docs/melonjs/Body.html#fromJSON"},"clDV1yE6VOUNPECEdbwmV":{"uri":"/melonJS/docs/melonjs/Body.html#getBounds"},"Mw0B_Djm18uM9XYPDWpvX":{"uri":"/melonJS/docs/melonjs/Body.html#getShape"},"ZkbFBLJR_wr_UK00MKMNY":{"uri":"/melonJS/docs/melonjs/Body.html#removeShape"},"tFh7J8Dn22kkaznp-RD_X":{"uri":"/melonJS/docs/melonjs/Body.html#removeShapeAt"},"DWLhDgpkHT5YWNKq-9n6y":{"uri":"/melonJS/docs/melonjs/Body.html#respondToCollision"},"CpokprhODoMiMzcutBjDG":{"uri":"/melonJS/docs/melonjs/Body.html#rotate"},"I0xkGAONSof1ZQPpPpyfI":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionMask"},"j0P1foO2iVpfvSo0dXR1m":{"uri":"/melonJS/docs/melonjs/Body.html#setCollisionType"},"mvD6FvcAm7LT6XtV-6vo2":{"uri":"/melonJS/docs/melonjs/Body.html#setFriction"},"Sd7kmSHLSlGWeK4QP04Yp":{"uri":"/melonJS/docs/melonjs/Body.html#setMaxVelocity"},"Q9PwEmHWaCh75RJg_fvv5":{"uri":"/melonJS/docs/melonjs/Body.html#setStatic"},"WzWcyBRSGLE_nZFLiWvzO":{"uri":"/melonJS/docs/melonjs/Body.html#setVertices"},"NbGvn1oCPSXfAojo8Jl6L":{"uri":"/melonJS/docs/melonjs/Body.html#update"},"e5F2JjTyEZDuk_R5XN7Tp":{"uri":"/melonJS/docs/melonjs/Bounds.html"},"3BmywkwLUDPY6MwOByhWe":{"uri":"/melonJS/docs/melonjs/Bounds.html#bottom"},"VaIai4vsVbfkr33PX9Slv":{"uri":"/melonJS/docs/melonjs/Bounds.html#center"},"wsc20kKWSwMqr-QFZ5Lul":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerX"},"J1gdl16ug41WPcxQGs3to":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerY"},"GrULUzVS7D2ZPvMVh5bB0":{"uri":"/melonJS/docs/melonjs/Bounds.html#height"},"4e8jLuhvDxqerGcUdgrdm":{"uri":"/melonJS/docs/melonjs/Bounds.html#left"},"4RpyqdcXiVE67_TLxE564":{"uri":"/melonJS/docs/melonjs/Bounds.html#right"},"tAfxe4sjunQcRzNC_pZax":{"uri":"/melonJS/docs/melonjs/Bounds.html#top"},"tDlAC__TAKHKBYbFBIaAd":{"uri":"/melonJS/docs/melonjs/Bounds.html#type"},"KblXH0Yoqxr5QZG5qTEqt":{"uri":"/melonJS/docs/melonjs/Bounds.html#width"},"-ljqj2DA-qhjhClATmgou":{"uri":"/melonJS/docs/melonjs/Bounds.html#x"},"yVDStz2jcYStJOw3i41v2":{"uri":"/melonJS/docs/melonjs/Bounds.html#y"},"z_ffeojVX_ElRrvPNfT8v":{"uri":"/melonJS/docs/melonjs/Bounds.html#add"},"e-GpFtQcbo5r5yZmVhMhw":{"uri":"/melonJS/docs/melonjs/Bounds.html#addBounds"},"TL-Jyc0CYhzcPag2rmu7b":{"uri":"/melonJS/docs/melonjs/Bounds.html#addFrame"},"Wkuy2fFU_16OiRDaES_D-":{"uri":"/melonJS/docs/melonjs/Bounds.html#addPoint"},"Bc2NqKuHWRqJ-KsNUI55Y":{"uri":"/melonJS/docs/melonjs/Bounds.html#centerOn"},"bMQWYqJyTeVBQIQ0I3LTH":{"uri":"/melonJS/docs/melonjs/Bounds.html#clear"},"Jl-EXQpJIRUsSorz3GFIU":{"uri":"/melonJS/docs/melonjs/Bounds.html#clone"},"S_SgccCkyj0jvAJ0qGYLx":{"uri":"/melonJS/docs/melonjs/Bounds.html#constructor"},"d4gyMiEZK7hjJnVE8W4G3":{"uri":"/melonJS/docs/melonjs/Bounds.html#contains"},"5l7HvVTNHjhoBlcJ0mi4_":{"uri":"/melonJS/docs/melonjs/Bounds.html#isFinite"},"pIb4texwW_omGC-Vbs8to":{"uri":"/melonJS/docs/melonjs/Bounds.html#overlaps"},"CfvVRXUmNFb7qX6cqkdfS":{"uri":"/melonJS/docs/melonjs/Bounds.html#setMinMax"},"8UZr6AtskSaWbePGyjSVw":{"uri":"/melonJS/docs/melonjs/Bounds.html#shift"},"Z_z6IjV5lbsWvKNegwqsP":{"uri":"/melonJS/docs/melonjs/Bounds.html#toPolygon"},"htcOHWTSYW_5Wg_asJQVC":{"uri":"/melonJS/docs/melonjs/Bounds.html#translate"},"O5kPT27kvOFLHj3WkaHd_":{"uri":"/melonJS/docs/melonjs/Bounds.html#update"},"c1Qj7XKE5X-zMO4fnpuuf":{"uri":"/melonJS/docs/melonjs/Camera2d.html"},"6UxDWN-zk5sF_HSLQHSic":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html"},"f_QaOqw7-6agwXWzp8EBU":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#BOTH"},"2k_SqomBnzVIcOGE6g_q2":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#HORIZONTAL"},"WrgTq4ZE8-kYJ_fxZNAO_":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#NONE"},"SqEWzkoTYeNr_Uqu4B6jz":{"uri":"/melonJS/docs/melonjs/Camera2d/AXIS.html#VERTICAL"},"z0Lj2r5gEMwAUKRayxwaH":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alpha"},"dg1RsWgwOKFliqCVQLQ5K":{"uri":"/melonJS/docs/melonjs/Camera2d.html#alwaysUpdate"},"LaiuDCTWa4n15ZKcljkb7":{"uri":"/melonJS/docs/melonjs/Camera2d.html#ancestor"},"9Hvu1KS3bxhGK0w6RkQiK":{"uri":"/melonJS/docs/melonjs/Camera2d.html#anchorPoint"},"c-CkeChZMhLTlxzmW5OG6":{"uri":"/melonJS/docs/melonjs/Camera2d.html#autoTransform"},"CmC9i1sTf7Vpplfe0Wcu8":{"uri":"/melonJS/docs/melonjs/Camera2d.html#blendMode"},"QXXhe_KgrHv6PEVd7MhUL":{"uri":"/melonJS/docs/melonjs/Camera2d.html#body"},"pnuhGYTK39vwhBIahvEdP":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bottom"},"4cytseIEC9BchjPit-czh":{"uri":"/melonJS/docs/melonjs/Camera2d.html#bounds"},"egzRw2WKICGThBO9nKB4_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerX"},"8XNKPFCCNKcu1kuLKdBWD":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerY"},"nZcGHl0ck2c2-BJgd4LKf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#currentTransform"},"8eCb1r52S64BysUqHaKHW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#damping"},"J2XRLyCEU7gIZCp2iCOaX":{"uri":"/melonJS/docs/melonjs/Camera2d.html#depth"},"OwLbCcUeMz2klRFPWvmHe":{"uri":"/melonJS/docs/melonjs/Camera2d.html#far"},"W4RB5mfF-TuWRlV6Qr3_N":{"uri":"/melonJS/docs/melonjs/Camera2d.html#floating"},"GxhG4WsxaeotAK3uOMa7U":{"uri":"/melonJS/docs/melonjs/Camera2d.html#GUID"},"Tablhc0ZQWL-KLvCsAFLq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#height"},"C4HEHcDo2mlh5AtS74TaT":{"uri":"/melonJS/docs/melonjs/Camera2d.html#inViewport"},"JCrtRzu9b-4Y_lxEgdzE3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isDirty"},"rTmL-_NjYBU0PRNU31uLd":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedX"},"FshFVBQoRDISj37QSCS_7":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFlippedY"},"8JiRwut0Mflgl7WnItg0F":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFloating"},"JDCgpyyH-btR9ZVcLaJgW":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isKinematic"},"f18j8HuoRm_wnMq1fyt-0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isPersistent"},"TYGivfuRCnaXsX9mVTs16":{"uri":"/melonJS/docs/melonjs/Camera2d.html#left"},"tiHyqgnjhTREEgDxUH62y":{"uri":"/melonJS/docs/melonjs/Camera2d.html#mask"},"IrD1s3iiKAaX0SyaUTxHS":{"uri":"/melonJS/docs/melonjs/Camera2d.html#name"},"K-IInsGay7sa8GFKjSJIS":{"uri":"/melonJS/docs/melonjs/Camera2d.html#near"},"nmEwDH0GrROihBXAGlglB":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onVisibilityChange"},"yDQ-d3RgP2UDta3KYtYGf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#points"},"-dGhLNOzMAk8HbeGY1NIA":{"uri":"/melonJS/docs/melonjs/Camera2d.html#pos"},"VWBOHDz5NtzTAWIaPt3sX":{"uri":"/melonJS/docs/melonjs/Camera2d.html#projectionMatrix"},"kAApW0DS4tgjuHJuVlNdV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#right"},"_RZ99FHREKrF7GkWUYNc_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shader"},"Ds3e1wCCJd69TxjM2PDbq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#tint"},"GJ4YoAPWKcezEIZ7B5yyJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#top"},"HTPM8Oz45E3HbtT3Bht1a":{"uri":"/melonJS/docs/melonjs/Camera2d.html#type"},"Tl286EjZ8__pNa6SFIV9P":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateWhenPaused"},"D55ULvvz6Y4qBDPGra9DV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#width"},"R-rHz9bHZeagRxKRTtDQ0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#smoothFollow"},"eTmdSLw8QSZsXzeBYKRVY":{"uri":"/melonJS/docs/melonjs/Camera2d.html#angleTo"},"ow0ge3ro0_LbDValC4tNZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#centerOn"},"Kzyiv5E5e-nhs0MJYsQP2":{"uri":"/melonJS/docs/melonjs/Camera2d.html#clone"},"6UbWN6A9aPjV6TSKlsKFJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#constructor"},"-DL0OvOwvvKvj3TzU7Xtg":{"uri":"/melonJS/docs/melonjs/Camera2d.html#contains"},"lc1dUWQ41fPbgns5Tx69a":{"uri":"/melonJS/docs/melonjs/Camera2d.html#copy"},"L2bnKYl9YOROKRG6U68hx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#distanceTo"},"TRiWojsMo0Ko200_-HgMZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#draw"},"54SSlj1KSmK_gWquHhH-0":{"uri":"/melonJS/docs/melonjs/Camera2d.html#equals"},"DI_fYtZkCrSOWWYiLkWY_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeIn"},"QerLXjKVAv8nG3JcdoS5B":{"uri":"/melonJS/docs/melonjs/Camera2d.html#fadeOut"},"-TTGP_Di-asDMr2SeDG4C":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipX"},"745rteg_o-0uVw2_GMqJx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#flipY"},"YLDiXUw69P-Kl_DKIRRKC":{"uri":"/melonJS/docs/melonjs/Camera2d.html#focusOn"},"NddNPuAo-q2Vfp5yuMA25":{"uri":"/melonJS/docs/melonjs/Camera2d.html#follow"},"DgzOlt1i7H2n6xMEC8CdA":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getAbsolutePosition"},"f3X_tK6XcCCxVZ7c_xvHS":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getBounds"},"j6JZZRRt-mkRfaPNRLIn1":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getIndices"},"E8yyPzJwVqn2N-AygwYXx":{"uri":"/melonJS/docs/melonjs/Camera2d.html#getOpacity"},"TmDfVOfTN0BkFNm0bX3AZ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isConvex"},"_p4FJO_S1U3aLYMdJAJhp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isFinite"},"q1m1VSCNYRj0q3VwiBlBf":{"uri":"/melonJS/docs/melonjs/Camera2d.html#isVisible"},"WZFw5Bef8gVz_xlzz_Pm5":{"uri":"/melonJS/docs/melonjs/Camera2d.html#localToWorld"},"-kACH-HvjqCklJ9AQA_Qd":{"uri":"/melonJS/docs/melonjs/Camera2d.html#lookAt"},"AbpcCP8QUCq7dg28rRVMV":{"uri":"/melonJS/docs/melonjs/Camera2d.html#move"},"CjsVWKx0hnxxqmKSHSA6m":{"uri":"/melonJS/docs/melonjs/Camera2d.html#moveTo"},"UEw-hm4zHwX9PkM6oFNrJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onCollision"},"ZosAgJK-olyb2FPd6cEE3":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onDestroyEvent"},"6gj0CdbYIAXeDSCS-__-c":{"uri":"/melonJS/docs/melonjs/Camera2d.html#overlaps"},"gWV0eJbhh4lx--Vz0W-e7":{"uri":"/melonJS/docs/melonjs/Camera2d.html#postDraw"},"79XAjCfKoasADtXciKqtk":{"uri":"/melonJS/docs/melonjs/Camera2d.html#preDraw"},"e1kbEwQcu3gz20EYkiEeJ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#recalc"},"w9dsrHJ2MM8FkGtKGFF4l":{"uri":"/melonJS/docs/melonjs/Camera2d.html#reset"},"YLFLHViDJzoxR52zl-1v9":{"uri":"/melonJS/docs/melonjs/Camera2d.html#resize"},"3FTMz1Kae8r8C6mvc9z0s":{"uri":"/melonJS/docs/melonjs/Camera2d.html#rotate"},"NWJBzeFX3kazQsyD60Qn7":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scale"},"TzpzgxrpnZiPiUfuSxzru":{"uri":"/melonJS/docs/melonjs/Camera2d.html#scaleV"},"b58uMI-tgB8yeIeaaSDkF":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setBounds"},"cdAxEcIcY25TpBqJ1_6vm":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setDeadzone"},"FijSTgj5eQ8_S5Pa5ABkQ":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setOpacity"},"pl-zVian7ONQA8obnNeRy":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setShape"},"w82KVUhClR-S3xQd8lTv4":{"uri":"/melonJS/docs/melonjs/Camera2d.html#setVertices"},"9blhC_aV2eBtIxBwMgIK8":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shake"},"oEVmkkpwswR_q4qtpxpHq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#shift"},"j0E1ROw5KW4UZy0ledJbp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#to2d"},"g_NpQIylMTYFPPIh0PV3_":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toIso"},"AVDfRB8yjoj9_XoHtKw3U":{"uri":"/melonJS/docs/melonjs/Camera2d.html#toPolygon"},"8nCNg6HYwsGwsRMebmHsp":{"uri":"/melonJS/docs/melonjs/Camera2d.html#transform"},"Ql5o1Zkw-fF5QH6S6lb14":{"uri":"/melonJS/docs/melonjs/Camera2d.html#translate"},"pbOaeeVle4Zn--GlE_XAq":{"uri":"/melonJS/docs/melonjs/Camera2d.html#unfollow"},"aVthtTtH_8ZGuBAJmkVzO":{"uri":"/melonJS/docs/melonjs/Camera2d.html#union"},"_2TkGvDDN6po-sjewLyya":{"uri":"/melonJS/docs/melonjs/Camera2d.html#update"},"t433sePFGLaf1nG6YEql5":{"uri":"/melonJS/docs/melonjs/Camera2d.html#updateBounds"},"NRfQdY6nVZ43N5qvtO12j":{"uri":"/melonJS/docs/melonjs/Camera2d.html#worldToLocal"},"oETmvSCsHEK1eeu79cVq6":{"uri":"/melonJS/docs/melonjs/Camera2d.html#onAnchorUpdate"},"-7XXLScHmpN8XoH42w52B":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html"},"P2uhtBsh1wHSeCuFbvNk6":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#depthTest"},"dsB00TwOEoaEuhSeuom-I":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#designRatio"},"48QZDqdNjR8FmcPnLDZVY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#height"},"qde51Ba9FS4lTb6o3pPLD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#isContextValid"},"HeVxr04yCTVsSpDQNKyCD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#path2D"},"PZ_QcnYvppqAeea4s1UPE":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scaleRatio"},"U2Z1WhShhDfmpG5jfx4xZ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#settings"},"rlhuP0Fq45GWEHpgQeRG_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#type"},"nKkVZ9YuvQYttg-1EaJym":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#width"},"f3EJYNpHDB1Q1bjn4hTz6":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#beginPath"},"62njXLgr51uKOox576BN-":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clear"},"5OvohipNUN77tmVM7HTZM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearColor"},"6j3MFUzs8a3w9t42qOODv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearMask"},"prapi3W78BQjQD6-iZfV6":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearRect"},"Dhfc0YJgBKlpsSubjqU_8":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clearTint"},"9oLbu2bKlKQ8lMsl9WwNf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#clipRect"},"jjvflCx7Q1oChHAskdiJP":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#closePath"},"_zegw7SBwZ9H19Aiz90CO":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#constructor"},"8n2XfvlmUSpmpMQa6_Wcl":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#createPattern"},"dYGrvll_B3MwZNAnVEL9G":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawImage"},"V6htaVDgSUAQZFHIKXttC":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#drawPattern"},"TsekJSoMj5FetFngh0Smc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fill"},"FiEvd7HxZYQ_yKZj31nT_":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillArc"},"jtyzJep1Jq1gI3VvJR8D2":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillEllipse"},"lXbkl9Wor7VDYCnurhCd3":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillLine"},"Pa4JzedC2Lgymb3DzFcIs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPoint"},"0aOkH0lWPQjjik0rHSzSi":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillPolygon"},"aYC8P3-IRAmw2Ay8UY6r4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRect"},"N5Phd0jkDi0H45ROolALK":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#fillRoundRect"},"3bv0LlVkAM4t2Xq5sY4g5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#flush"},"Vgwg5e4H8TFDLGjx9wCIc":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getBlendMode"},"Hv482XYCMiL-NVWQW4zHE":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getCanvas"},"u04qx91lpFG95zkUs2nTf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getColor"},"koEZ_VVt4kGax1pjF24Bn":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext"},"1lSK7OHZb3AgLPBz02uMh":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getContext2d"},"OvSpgVYvRaepNVasvyJqM":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getGlobalAlpha"},"amtiGfME_W0eUnkchotsj":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenCanvas"},"L2P-ckVjBOEQLybEO3jZa":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#getScreenContext"},"9qgyPhxxjz44jzYm96pvt":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#globalAlpha"},"KZ6RE1apsqbxHqstDIVvW":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#lineTo"},"r3utmT208yoytJvVn4kvJ":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#moveTo"},"5Ne1XAVsK4bNsQaN5Mve1":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#overlaps"},"FlvemsGU_IndtEwVjFwBX":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rect"},"HQfM4_S6YlPuyGapBsP8f":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#reset"},"voArBEeWrq1RzVv0PqE7Z":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resetTransform"},"sSpPY9AwkYykLsFpZruhv":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#resize"},"oHcpX8PvBYGFjoBELNwez":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#restore"},"pzV-7iOewW1gJQMVDDgxr":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#rotate"},"mxCNsLgy_Uvggl8NU6Cas":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#roundRect"},"kuBcdU2Sq3OwOubs582Vx":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#save"},"TpZ565AyYhH5fgiUuJ9Cf":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#scale"},"n896R5c-RCDF-z33YyNTu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setAntiAlias"},"4NUdzxztVl-AA3MFJOieA":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setBlendMode"},"CCWuOT7nekUve3tCtGj36":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setColor"},"dIYZ_S7tj8PU8t-sQdjN9":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setGlobalAlpha"},"aQ4DxK08Iw1Kiori9dAJi":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setLineWidth"},"axmfWJsdAGqj12GPtY0K5":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setMask"},"xthFtKMc0A6pNMq-6tv9y":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setProjection"},"zkr6y939uSkcD-QiNbjs7":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTint"},"iqyN74vGoWIPDQyxxN6yY":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#setTransform"},"FECqoyIkal9ePeOSf9Hjk":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#stroke"},"BzFZeay6UmXAm888KUKjO":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeArc"},"b7i6zDadSpHRMEGMZNpmL":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeEllipse"},"iNa2b275x_2WPPbJwdTzD":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeLine"},"jphf-AL4EvSJi7HBFVDcl":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePoint"},"dkiWSwN8mBZLOiUAVn0fA":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokePolygon"},"Z23DLGMFeestdsq8ElvO4":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRect"},"IvAMtwNQzZ9rXEaT7sxkB":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#strokeRoundRect"},"9hC7sKj7qM-uWH554d99A":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#tint"},"UTZlVbzlTk5hfIn99pOqy":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toBlob"},"otxm6eEbsfFFiZ2MSuA44":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toDataURL"},"M_KWYxjVt3tBiM1TEehAu":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#toImageBitmap"},"jNNd6urgUQ4BbpIZ3qpAs":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#transform"},"wkFd9g9xlmDrfK80lgDbd":{"uri":"/melonJS/docs/melonjs/CanvasRenderer.html#translate"},"V-BKRNKnPlBZgO9qJxLDG":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html"},"1afruDq5VvVIgQkDjwtK-":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#canvas"},"0f7UgaKIqNVXNXUgbGS2i":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#context"},"7AR0mEM6gfknZ1kkG1BX4":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#height"},"GuTPczpCP5uX5Pcw9U3cK":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#width"},"5O5hNZO2IkDgJTmmuVLyu":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#clear"},"NSmF0wiDkFaNqEs0sSPq7":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#constructor"},"WOFDb1Tf2SSNHgSduhbGx":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#getImageData"},"52te--md1gtaAlg-T3yio":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#invalidate"},"XLxWSXFF5rFps1ABMDavL":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#resize"},"MJ_gcdNBgZNTfcWe1oGZ2":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#setAntiAlias"},"lHsRdvaNjycP3PghNAOFb":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toBlob"},"6PUVuMG5j37VIL2U8PNrM":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toDataURL"},"qWYcKV6GMQdTlT1QgrX7i":{"uri":"/melonJS/docs/melonjs/CanvasTexture.html#toImageBitmap"},"Qs19jWoRwsEyWisFB31Nn":{"uri":"/melonJS/docs/melonjs/Collectable.html"},"0acS5O8lilt5AUzCX47fb":{"uri":"/melonJS/docs/melonjs/Collectable.html#alpha"},"Lfnz3vtJL8Ws5-z1XXQh9":{"uri":"/melonJS/docs/melonjs/Collectable.html#alwaysUpdate"},"bPQo8jNJfkSlXFUPFdAfC":{"uri":"/melonJS/docs/melonjs/Collectable.html#ancestor"},"L-1Sj0GXOlr9UW8jEmcEB":{"uri":"/melonJS/docs/melonjs/Collectable.html#anchorPoint"},"9xtaZT57Na8a_ZjBwx9JP":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationpause"},"43MSvXIyHtrdpJoa5ersS":{"uri":"/melonJS/docs/melonjs/Collectable.html#animationspeed"},"BRarptDfRIUAr1aOQ-qaI":{"uri":"/melonJS/docs/melonjs/Collectable.html#autoTransform"},"CrBRdITuZJxlGP6xCmCca":{"uri":"/melonJS/docs/melonjs/Collectable.html#blendMode"},"OMx8ahx_YTDHLFLwuMO3y":{"uri":"/melonJS/docs/melonjs/Collectable.html#body"},"KC9TuTtnuDxC2wHdabV1-":{"uri":"/melonJS/docs/melonjs/Collectable.html#bottom"},"36ZSmEsDNiVrkePWac2im":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerX"},"s0CVKiuuxjt-ZicSxw7wu":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerY"},"UpO86kCwUNNjWuMb7jV5e":{"uri":"/melonJS/docs/melonjs/Collectable.html#currentTransform"},"f8sGlvPi4YXmwVChpVWNP":{"uri":"/melonJS/docs/melonjs/Collectable.html#depth"},"L0GVXw3f5uuqlbCd4g9dB":{"uri":"/melonJS/docs/melonjs/Collectable.html#floating"},"UXrTUIez7M9eVu2Qc20Z-":{"uri":"/melonJS/docs/melonjs/Collectable.html#GUID"},"BgFQ8cRUQ_UluqOEiCHpb":{"uri":"/melonJS/docs/melonjs/Collectable.html#height"},"hPEitar8J8USmCDotK15W":{"uri":"/melonJS/docs/melonjs/Collectable.html#inViewport"},"wz8wwgFl2HtZsoh3R9JCM":{"uri":"/melonJS/docs/melonjs/Collectable.html#isDirty"},"vazCbMi8McadUe3X0UVIf":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedX"},"EQPh5i3TEsG969F1mwoXX":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlippedY"},"sLSAW3ZaKvV2uFBHxgXzo":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFloating"},"HFdajBfecjccnLFngb-WS":{"uri":"/melonJS/docs/melonjs/Collectable.html#isKinematic"},"LNQmYL6SyV0jXvDUKo7aO":{"uri":"/melonJS/docs/melonjs/Collectable.html#isPersistent"},"SkUl5ruxwSFTpOA8pRC2l":{"uri":"/melonJS/docs/melonjs/Collectable.html#left"},"p8_6WPhLzBKNxIrAjWJR6":{"uri":"/melonJS/docs/melonjs/Collectable.html#mask"},"0hMBgLgxskCLyBcGNc1Sx":{"uri":"/melonJS/docs/melonjs/Collectable.html#name"},"AUVwPtCcTL0g5IfnJxYXV":{"uri":"/melonJS/docs/melonjs/Collectable.html#offset"},"J3Ns4izAnjBs4-ASN8V9-":{"uri":"/melonJS/docs/melonjs/Collectable.html#onVisibilityChange"},"rFu1aGZzmWT8mzSu6cqOe":{"uri":"/melonJS/docs/melonjs/Collectable.html#points"},"RHPy8yed2RpXVMDB8o7Z0":{"uri":"/melonJS/docs/melonjs/Collectable.html#pos"},"O8QTxOnPn8q1HrXaPLIGA":{"uri":"/melonJS/docs/melonjs/Collectable.html#right"},"V2HJNZEt4c9LKm6pkhSxS":{"uri":"/melonJS/docs/melonjs/Collectable.html#shader"},"8rEuJDSbcuy7OCc6PWAby":{"uri":"/melonJS/docs/melonjs/Collectable.html#source"},"Bu33lox494Ex-A3uXs4E2":{"uri":"/melonJS/docs/melonjs/Collectable.html#tint"},"pGVMC6S976PmUOC6gaykq":{"uri":"/melonJS/docs/melonjs/Collectable.html#top"},"x_4pvK_e41cd_qmy-0b_V":{"uri":"/melonJS/docs/melonjs/Collectable.html#type"},"4l2LYasaGEmDGrZwp_nMY":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateWhenPaused"},"iR8S6uM_JDgEz7BkYMVbX":{"uri":"/melonJS/docs/melonjs/Collectable.html#width"},"L-o6FWFBeNK7NJZIgc5Sk":{"uri":"/melonJS/docs/melonjs/Collectable.html#addAnimation"},"Q5Q5J6PB5xOEqzOSpbNQR":{"uri":"/melonJS/docs/melonjs/Collectable.html#angleTo"},"0SCklhoOJ5SW1xcq3J7qN":{"uri":"/melonJS/docs/melonjs/Collectable.html#centerOn"},"AkwKNQoktkAoOiVX6iN_F":{"uri":"/melonJS/docs/melonjs/Collectable.html#clone"},"j6e2hFty811MUEfvkWc3T":{"uri":"/melonJS/docs/melonjs/Collectable.html#constructor"},"TMwSSN054syhFNsn4baMq":{"uri":"/melonJS/docs/melonjs/Collectable.html#contains"},"wtTj9bFG_sGu_L2Bg2AUD":{"uri":"/melonJS/docs/melonjs/Collectable.html#copy"},"O4lZcSbGQGb9KocARLF3S":{"uri":"/melonJS/docs/melonjs/Collectable.html#distanceTo"},"oU5nt2MXKGkCiLuhrru2h":{"uri":"/melonJS/docs/melonjs/Collectable.html#equals"},"1p5p9E8luD8zliWAT6Csu":{"uri":"/melonJS/docs/melonjs/Collectable.html#flicker"},"Zid7d8aG0_uiQ1wqqtm4V":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipX"},"QnBWEj9Hqf46RiNVjZB9T":{"uri":"/melonJS/docs/melonjs/Collectable.html#flipY"},"SE-uymBKcR972mPBUHk1y":{"uri":"/melonJS/docs/melonjs/Collectable.html#getAbsolutePosition"},"YQ3m3GiRYQrrxL9NCFA3c":{"uri":"/melonJS/docs/melonjs/Collectable.html#getBounds"},"ZTyUQegdx8GjXnmv1GduI":{"uri":"/melonJS/docs/melonjs/Collectable.html#getCurrentAnimationFrame"},"TbO7S8-mIwKD6lgjtZLjA":{"uri":"/melonJS/docs/melonjs/Collectable.html#getIndices"},"DX3155mdYAHI1Eku1mZ9X":{"uri":"/melonJS/docs/melonjs/Collectable.html#getOpacity"},"-fqF8Y6LHxbWFSGeXeBvQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#isConvex"},"rTcPNydR90Wgi5d2n1d2d":{"uri":"/melonJS/docs/melonjs/Collectable.html#isCurrentAnimation"},"k9KUUp_4LK-s2e2VuF0ee":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFinite"},"LUIyVJS4nYYINeZPMi7se":{"uri":"/melonJS/docs/melonjs/Collectable.html#isFlickering"},"FBA5yLRlp_bbULPuLWcVx":{"uri":"/melonJS/docs/melonjs/Collectable.html#lookAt"},"1kvcAANkMHqC5n9ppTyYH":{"uri":"/melonJS/docs/melonjs/Collectable.html#onCollision"},"vvDlimjXlcE9jjYbggovp":{"uri":"/melonJS/docs/melonjs/Collectable.html#onDestroyEvent"},"4NMsxeaVyy0FlgRlXi6vQ":{"uri":"/melonJS/docs/melonjs/Collectable.html#overlaps"},"2ixqKm8BEAajnW27Ip1BG":{"uri":"/melonJS/docs/melonjs/Collectable.html#postDraw"},"5C6fNYGy4C7Ngw_BVA7aT":{"uri":"/melonJS/docs/melonjs/Collectable.html#preDraw"},"2klttF3imDvkkxLyRXP2G":{"uri":"/melonJS/docs/melonjs/Collectable.html#recalc"},"5W5ePtl-wJEaTXICMygPD":{"uri":"/melonJS/docs/melonjs/Collectable.html#resize"},"fx6vcIQGsU4KUXE4wZTDU":{"uri":"/melonJS/docs/melonjs/Collectable.html#reverseAnimation"},"2zoj8rCLXRQ39n-SCmNAi":{"uri":"/melonJS/docs/melonjs/Collectable.html#rotate"},"xP61vQ0UgmfOiUCJqYD9z":{"uri":"/melonJS/docs/melonjs/Collectable.html#scale"},"5tjwu5yV18GmPpqwC-trw":{"uri":"/melonJS/docs/melonjs/Collectable.html#scaleV"},"5NscCVGQR4wqe87sZnKmf":{"uri":"/melonJS/docs/melonjs/Collectable.html#setAnimationFrame"},"NbrhcpDDbYnsERhTasAq0":{"uri":"/melonJS/docs/melonjs/Collectable.html#setCurrentAnimation"},"qBw8DMmYcOzOEIi3i4Tty":{"uri":"/melonJS/docs/melonjs/Collectable.html#setOpacity"},"HgYhI_jKe3RfexqpzmD3a":{"uri":"/melonJS/docs/melonjs/Collectable.html#setRegion"},"ExnwiEtbftCXKuzjJJUg3":{"uri":"/melonJS/docs/melonjs/Collectable.html#setShape"},"qI0JdkAAfPJOxsE6FFv4x":{"uri":"/melonJS/docs/melonjs/Collectable.html#setVertices"},"FzcDGWHbECJ1r6yV_lswq":{"uri":"/melonJS/docs/melonjs/Collectable.html#shift"},"HPQjXLLRWrcb_10FWlfVu":{"uri":"/melonJS/docs/melonjs/Collectable.html#to2d"},"SRYSh_jlvxlMJi47Wc0-7":{"uri":"/melonJS/docs/melonjs/Collectable.html#toIso"},"impQjWieJMMZL5mO655Yr":{"uri":"/melonJS/docs/melonjs/Collectable.html#toPolygon"},"gmk_sk3T75kWumDXCqUUf":{"uri":"/melonJS/docs/melonjs/Collectable.html#transform"},"xfZ2M1bqlegr5mA3axo9p":{"uri":"/melonJS/docs/melonjs/Collectable.html#translate"},"eyB9Qh-RaUG1XqYABscVO":{"uri":"/melonJS/docs/melonjs/Collectable.html#union"},"mJKM4FG0X4kaihy5bQTtf":{"uri":"/melonJS/docs/melonjs/Collectable.html#updateBounds"},"nJYEc2wSULymAxfN5ky_6":{"uri":"/melonJS/docs/melonjs/Collectable.html#draw"},"OG0m2ny4DqCWX3lKpp5lV":{"uri":"/melonJS/docs/melonjs/Collectable.html#update"},"gTRfGZiMTrOVyvGcay9mM":{"uri":"/melonJS/docs/melonjs/Collectable.html#onAnchorUpdate"},"r2tZWcjzlILdA9AtKfByH":{"uri":"/melonJS/docs/melonjs/Color.html"},"yNQ5Cd__FqXnnQm4oI0w4":{"uri":"/melonJS/docs/melonjs/Color.html#alpha"},"eHxCuiL7IMsKeRR3qTKdj":{"uri":"/melonJS/docs/melonjs/Color.html#b"},"UUWPfnj-G2fnfbLwHjvDI":{"uri":"/melonJS/docs/melonjs/Color.html#g"},"hEi8r58nNIClds1ruRpwz":{"uri":"/melonJS/docs/melonjs/Color.html#r"},"BYTFqLMWFcjk3yGGssVIt":{"uri":"/melonJS/docs/melonjs/Color.html#add"},"RokTbEetjH--2ZVHbthBX":{"uri":"/melonJS/docs/melonjs/Color.html#clone"},"ffHmiSRVKqDccKhYKLOR-":{"uri":"/melonJS/docs/melonjs/Color.html#constructor"},"AV79KZ7sTQA5cYhM8MzPN":{"uri":"/melonJS/docs/melonjs/Color.html#copy"},"wcJtK6kDOMtbRoXTLV1St":{"uri":"/melonJS/docs/melonjs/Color.html#darken"},"Vtp49i2ZKMqrbKOKMv28m":{"uri":"/melonJS/docs/melonjs/Color.html#equals"},"h3nNPMboboS0HPvhpgmyt":{"uri":"/melonJS/docs/melonjs/Color.html#lerp"},"0xAaDKxKs-MFKpiZagQC9":{"uri":"/melonJS/docs/melonjs/Color.html#lighten"},"sta5LpzUjNI80EiwsO4Ea":{"uri":"/melonJS/docs/melonjs/Color.html#parseCSS"},"3agW1HFhhJUjr27eS5RJq":{"uri":"/melonJS/docs/melonjs/Color.html#parseHex"},"YopuutQLZAUDnL6vN2eVR":{"uri":"/melonJS/docs/melonjs/Color.html#parseRGB"},"DwBK3kBNGR1oOd5xuLWIC":{"uri":"/melonJS/docs/melonjs/Color.html#random"},"K8gsLUWOSkemIOZ-DCZBC":{"uri":"/melonJS/docs/melonjs/Color.html#setColor"},"K5UmrExFRtWjiZU8HHCuF":{"uri":"/melonJS/docs/melonjs/Color.html#setFloat"},"dhaTbWdVwa2BfnAbTniPE":{"uri":"/melonJS/docs/melonjs/Color.html#setHSL"},"EVsRBwmhOIfbIY8lg2KYD":{"uri":"/melonJS/docs/melonjs/Color.html#setHSV"},"R_7rBugv5G-rOX8v18XUx":{"uri":"/melonJS/docs/melonjs/Color.html#toArray"},"UAciVpEmsNXN7pcYyKa1H":{"uri":"/melonJS/docs/melonjs/Color.html#toHex"},"1gdkbD16bHempFdMyLyof":{"uri":"/melonJS/docs/melonjs/Color.html#toHex8"},"_yC_-WrLI59Z31w39kZNN":{"uri":"/melonJS/docs/melonjs/Color.html#toRGB"},"HGAbB-W_4F-i9H3DIq1PS":{"uri":"/melonJS/docs/melonjs/Color.html#toRGBA"},"xBc17ICtQIKPZcUryk4bB":{"uri":"/melonJS/docs/melonjs/Color.html#toUint32"},"gibD-ZZ9abTsNHsiBFTH1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html"},"r55c-pLmj6UcvJ-yVwpo_":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alpha"},"pNMduSji-UH1oHFBqGF0l":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#alwaysUpdate"},"gzCLcgBQstB7c_eTzAcuC":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#ancestor"},"ofICWSzEJggHFo75YCqXa":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#anchorPoint"},"Xb6cLMhcds8M69xp-C_Pr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#autoTransform"},"z-PkfhmFPyWzFzFOwECSI":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#blendMode"},"f2T981IPRHj65Hb9w-sMr":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#body"},"ZddKqCEPinoOP83gLj56X":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#bottom"},"Ne0BcjtbyNGVa8aUlVqOG":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerX"},"V-jGg_-K42MtuEgMg9rfR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerY"},"GRVTiDJXnv0RRrLVFxzdR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#color"},"HDtaq1FN7lkmanv5UMWxv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#currentTransform"},"zqFyCXO-T5XHQkHH9pjQR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#depth"},"bq3tZHFJ5seKqM6QWOfY_":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#floating"},"uEhtEmORweQtVqgMYhUix":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#GUID"},"ZcmnA4Iqk7Of46rzDjLK3":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#height"},"Uf0hwjScGhblUy0KmHfR1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#inViewport"},"DGGQPHRpiCuHsLLh-tDLi":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isDirty"},"MwaRhA3NLT_mq3OdDl8vA":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedX"},"jZIu3i_bhxsi8k8C22Wq4":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFlippedY"},"s1UFrmopzGAd9WTCoNvt1":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFloating"},"5Z5vmrVFySXhmK_7Atj8Q":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isKinematic"},"4P3CCYil4_djDF2DjBS-K":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isPersistent"},"HNvUtjNj3DfyCeQSkeqTO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#left"},"wIDYzghWHmia9AnjkUNNe":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#mask"},"JZvn_fWDG3RIHbe9yPdmu":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#name"},"OHH0jJ1kgiLeq5PQreQzT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onVisibilityChange"},"-Ze9Gi9d4PL2hFsqutCQ7":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#points"},"6t5lVuaLt1_Pacrbdfj7t":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#pos"},"OpZ-4nljHBH8ghz0f9meO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#right"},"5qxmC3hLyTmvEdUrtGAGU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shader"},"BD1kIxfyjcKbbXCtqdFBZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#tint"},"GVXobuK8XAW5sU7jAV0DW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#top"},"zkNh5ghAf-y2ErLjHdF0p":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#type"},"RR2BYB6f62hbaBFC4PPRe":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateWhenPaused"},"whB8-RDY2qmOe-xh0CvMO":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#width"},"yfSmh-A2ViZmNiW1Sp8dY":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#angleTo"},"vxXW_wPlbnE0JMdOVh3PU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#centerOn"},"I16LGEg5IuPT9ZzF6ItCf":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#clone"},"7RgW9BW6twjYswK7-iao7":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#constructor"},"SkORn1dyVBUU03iTDE_Nf":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#contains"},"EsRssQG9s2GE-xqBIkqQz":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#copy"},"5ApkXUjYhEiEyrz4KrMnP":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#distanceTo"},"4RqxcVFDMlCCUUGM0lTJT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#equals"},"jongQJBL9yhOBz-z4Bsca":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipX"},"6D6ByHKZUrnM1XCaamGSl":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#flipY"},"PX7FQai2-qBBORiie396H":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getAbsolutePosition"},"JjjE7rlXwYtPQWDgJhO0P":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getBounds"},"BjRbEO5wN_uIZ67Zd9MK6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getIndices"},"ARSUpjE7GhlAxBbV5PcjL":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#getOpacity"},"byFEqTvwizWvDa9kBPVlZ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isConvex"},"9k8Q_8umHc2ilkNL1MycJ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#isFinite"},"gySBhSdqFfYJjtXtOO3WB":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#lookAt"},"do4MkDeil2jpr4dN7aozR":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onCollision"},"PEOvTgCzLhhC-kBYf2BoP":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onDestroyEvent"},"KV1B40opkoeFjrVOqpf_Q":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#overlaps"},"CsEP5_ohFTq57mgmT3GU6":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#postDraw"},"v1liEIDq7n8kvVhlhCyj4":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#preDraw"},"MYOTAfW_HhkmWD8LGegMT":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#recalc"},"onQzDHBKGi4zqnY-xjBqE":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#resize"},"lN2xp_RECQ91dTo3N7t1o":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#rotate"},"tJX5cnqhEHBvMoz0xrJSp":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scale"},"Mo6qZAIDblTdRVB4cz5Jv":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#scaleV"},"tpKdACQLwHazjmIhL88bp":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setOpacity"},"CP-jHu625alokIPCgMKhU":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setShape"},"4T7MSXG3GYd1sWY5nk-Le":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#setVertices"},"-tYkWfjVPXgVEc6rHehJA":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#shift"},"4_tY-4h_rU4vkl87bN0Lc":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#to2d"},"WYMAypt74aeQW_UwobNYP":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toIso"},"sOjUEWZL88TQ_E6MriKLp":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#toPolygon"},"nkHq2X2NyAvOrR_HMIY1S":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#transform"},"IjnmTbSHMGUQfHYO4DmyB":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#translate"},"ood6zhcsTFC1T5kI5r359":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#union"},"oIZKuk_3ldTI_pISuLPPW":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#update"},"WaAdigIQf_N0E2jKy2zW0":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#updateBounds"},"SQPm6JbV9c8pfuBCF1jIQ":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#draw"},"X9zx-lnjElks1Cp3AttbI":{"uri":"/melonJS/docs/melonjs/ColorLayer.html#onAnchorUpdate"},"YiZ8WZfAGb0wdon4rVcBm":{"uri":"/melonJS/docs/melonjs/Compositor.html"},"YNZ2kvpBDpr-_yqFA4iXx":{"uri":"/melonJS/docs/melonjs/Compositor.html#attributes"},"K4c67paZsoKtkzxeGXJAl":{"uri":"/melonJS/docs/melonjs/Compositor.html#currentShader"},"HUVRZKlSItszuKCaQ_xSE":{"uri":"/melonJS/docs/melonjs/Compositor.html#defaultShader"},"P6NzI0S5yVy_IZpH6gGpe":{"uri":"/melonJS/docs/melonjs/Compositor.html#mode"},"ckCtbP0K9BMKvyMELJcDE":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexByteSize"},"VPgm5WMXwZhnmLIEqMVny":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexData"},"20QxDiaNjsGjzPSNwpTmM":{"uri":"/melonJS/docs/melonjs/Compositor.html#vertexSize"},"EzvpaXlR4UVOdSGNuA7O3":{"uri":"/melonJS/docs/melonjs/Compositor.html#addAttribute"},"0XXGBlXcwRYy_cYsvYb9B":{"uri":"/melonJS/docs/melonjs/Compositor.html#bind"},"9uFSaDxp5axsFOabtHfKF":{"uri":"/melonJS/docs/melonjs/Compositor.html#constructor"},"CV71gLNZGi8vP7iziHajA":{"uri":"/melonJS/docs/melonjs/Compositor.html#flush"},"bzWiOkALapmDFemxtLAwW":{"uri":"/melonJS/docs/melonjs/Compositor.html#setProjection"},"gorzamR40lavXdqFgLm4o":{"uri":"/melonJS/docs/melonjs/Compositor.html#useShader"},"r8Z4b7ilXahSFZrBevAGW":{"uri":"/melonJS/docs/melonjs/Container.html"},"uR9wiGMKYTL4YCkAmiXUQ":{"uri":"/melonJS/docs/melonjs/Container.html#alpha"},"RGWR7F9P1cWnbmQaY2pFb":{"uri":"/melonJS/docs/melonjs/Container.html#alwaysUpdate"},"stn6RzI0Ny4mlzPlrcF4I":{"uri":"/melonJS/docs/melonjs/Container.html#ancestor"},"aQznfRD2Va3ucstTWft68":{"uri":"/melonJS/docs/melonjs/Container.html#anchorPoint"},"aK9AEUcj7slQsjxB5FnAy":{"uri":"/melonJS/docs/melonjs/Container.html#autoDepth"},"Z3KNTIyamT4bxVaH2sm3v":{"uri":"/melonJS/docs/melonjs/Container.html#autoSort"},"VBh3t6--QUeXKty3cY6ZY":{"uri":"/melonJS/docs/melonjs/Container.html#autoTransform"},"IvjS8Pt27_F5MQEHYwl9R":{"uri":"/melonJS/docs/melonjs/Container.html#backgroundColor"},"zu4FUf0gM36cVK07BkWoq":{"uri":"/melonJS/docs/melonjs/Container.html#blendMode"},"LY5JgE3Zq5PTNCKETH9-a":{"uri":"/melonJS/docs/melonjs/Container.html#body"},"2UQaukaqVhg2bt8MToEXR":{"uri":"/melonJS/docs/melonjs/Container.html#bottom"},"UwcsmZx0ocPi2wlWv1rpn":{"uri":"/melonJS/docs/melonjs/Container.html#centerX"},"R1sg527KHNfhoynH-1jKH":{"uri":"/melonJS/docs/melonjs/Container.html#centerY"},"Bce5isIaUp7ZJAt9gyMVS":{"uri":"/melonJS/docs/melonjs/Container.html#clipping"},"RTWOo5roqFbnVRTZPYTpM":{"uri":"/melonJS/docs/melonjs/Container.html#currentTransform"},"23pH7AB_nmzHMhddearjY":{"uri":"/melonJS/docs/melonjs/Container.html#depth"},"eddfvMwL95SHGFKj8PPA7":{"uri":"/melonJS/docs/melonjs/Container.html#enableChildBoundsUpdate"},"yPWRt8Hdyu20ikoX_pH98":{"uri":"/melonJS/docs/melonjs/Container.html#floating"},"J7oDM7vmr7nRXCCk6Ue-i":{"uri":"/melonJS/docs/melonjs/Container.html#GUID"},"8ZqNBeqQSpu6L2KWLovwO":{"uri":"/melonJS/docs/melonjs/Container.html#height"},"ujUWlq6v2zV-kGrN10Z98":{"uri":"/melonJS/docs/melonjs/Container.html#inViewport"},"qJPKK8F87MwBKabEd5MO6":{"uri":"/melonJS/docs/melonjs/Container.html#isDirty"},"kAiHfhK5NNg5dpgyNVCBY":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedX"},"1aSQl3lVqKHlNBg_ETSqi":{"uri":"/melonJS/docs/melonjs/Container.html#isFlippedY"},"GKQf2WCMSXrUJ0Ad9Cft7":{"uri":"/melonJS/docs/melonjs/Container.html#isFloating"},"Y9HmEFN20UYSo_Lgnvr36":{"uri":"/melonJS/docs/melonjs/Container.html#isKinematic"},"_JtiCehMe_ZDbyzB2-wQz":{"uri":"/melonJS/docs/melonjs/Container.html#isPersistent"},"di3JoGGRTRp01R3PDpbjS":{"uri":"/melonJS/docs/melonjs/Container.html#left"},"Bqv09w9pydNG3ce-FICkd":{"uri":"/melonJS/docs/melonjs/Container.html#mask"},"EFwyk6po7IEOyeQZ4sFqs":{"uri":"/melonJS/docs/melonjs/Container.html#name"},"ixq7WBcJw7HcpMu0tzU1b":{"uri":"/melonJS/docs/melonjs/Container.html#onVisibilityChange"},"OoYI_zfJDvFUM_gBLa39P":{"uri":"/melonJS/docs/melonjs/Container.html#points"},"ZCKGIVHG9Q-6lq70k1eho":{"uri":"/melonJS/docs/melonjs/Container.html#pos"},"28zUMvFoxv1gryLpGzJ2h":{"uri":"/melonJS/docs/melonjs/Container.html#right"},"pX_QBPkVJIf8895ZJD7c3":{"uri":"/melonJS/docs/melonjs/Container.html#root"},"Iy-PVBUM-_tsxeUD4zdMw":{"uri":"/melonJS/docs/melonjs/Container.html#shader"},"7O9iqcUYwMxW1jb7FNk41":{"uri":"/melonJS/docs/melonjs/Container.html#sortOn"},"p2U2A56ygiFC0ycdBORQn":{"uri":"/melonJS/docs/melonjs/Container.html#tint"},"uLELorX-KOygcF_npTu59":{"uri":"/melonJS/docs/melonjs/Container.html#top"},"IrrSFLh-L2mlAOeGDI6u8":{"uri":"/melonJS/docs/melonjs/Container.html#type"},"3XuJ-tG7ZdOoCQdcMZ6lc":{"uri":"/melonJS/docs/melonjs/Container.html#updateWhenPaused"},"-M6QtYRqbE3Gt0fmbeA5I":{"uri":"/melonJS/docs/melonjs/Container.html#width"},"a8VhpKaP9uUPmBna4XBcs":{"uri":"/melonJS/docs/melonjs/Container.html#addChild"},"sTu8S36JV41JulcgXwqJs":{"uri":"/melonJS/docs/melonjs/Container.html#addChildAt"},"4xXWVPnMS36SCfU9BRdRw":{"uri":"/melonJS/docs/melonjs/Container.html#angleTo"},"I7zfzibMZEU-RU3GsgCj5":{"uri":"/melonJS/docs/melonjs/Container.html#centerOn"},"eDRcqyN0yQrvhNK4sjwfU":{"uri":"/melonJS/docs/melonjs/Container.html#clone"},"fVfBruo3cNRimvmnaUD6-":{"uri":"/melonJS/docs/melonjs/Container.html#constructor"},"dUKlaF-fVDVleb8oU3o9Z":{"uri":"/melonJS/docs/melonjs/Container.html#contains"},"jXlE62aaw9Ke5T0DfOKHx":{"uri":"/melonJS/docs/melonjs/Container.html#copy"},"ZLyzENUEYSIGs4UFH5FUq":{"uri":"/melonJS/docs/melonjs/Container.html#distanceTo"},"3i5TbHUQWmgzx0l2vysrP":{"uri":"/melonJS/docs/melonjs/Container.html#equals"},"gaRi7kElFktcQnF7loWJu":{"uri":"/melonJS/docs/melonjs/Container.html#flipX"},"7ogJO2mUs8CWiHADUvqN2":{"uri":"/melonJS/docs/melonjs/Container.html#flipY"},"o3xDpxiQg_aRRXUHll44q":{"uri":"/melonJS/docs/melonjs/Container.html#forEach"},"H62-BBLOjtM2XHRo1MVaI":{"uri":"/melonJS/docs/melonjs/Container.html#getAbsolutePosition"},"tGeQVRlwAvTIrTCe9B2JV":{"uri":"/melonJS/docs/melonjs/Container.html#getBounds"},"XLYVJeIWrCAO4s5uz2xic":{"uri":"/melonJS/docs/melonjs/Container.html#getChildAt"},"S1Nqv2Lrkse1i907TpYos":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByGUID"},"Zg-Q3Nd7QKkoHWZMYvFum":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByName"},"NgNoLGJQdhi4pQ0z6AGGK":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByProp"},"lC_f0XugeIUaIgPPfEQkb":{"uri":"/melonJS/docs/melonjs/Container.html#getChildByType"},"MMsjOjNmiPjzOxFveYW7-":{"uri":"/melonJS/docs/melonjs/Container.html#getChildIndex"},"9zu_uSD5NRXbAutJ1Iti-":{"uri":"/melonJS/docs/melonjs/Container.html#getChildren"},"iPAg9VOgPFH7RgU-bt3Zg":{"uri":"/melonJS/docs/melonjs/Container.html#getIndices"},"ankeu8V8Q3kkdTsMp9GJK":{"uri":"/melonJS/docs/melonjs/Container.html#getNextChild"},"OxKSiS2Llpd6JBPWhDiHA":{"uri":"/melonJS/docs/melonjs/Container.html#getOpacity"},"GxvN2JIiolw9ShJ3vxZeF":{"uri":"/melonJS/docs/melonjs/Container.html#getRootAncestor"},"blbpb_49N6-nQhGWamMCY":{"uri":"/melonJS/docs/melonjs/Container.html#hasChild"},"ya4X_wqLgWHtYocXv3xZP":{"uri":"/melonJS/docs/melonjs/Container.html#isAttachedToRoot"},"o1aOUZ8CvGDM6nj4VCfuR":{"uri":"/melonJS/docs/melonjs/Container.html#isConvex"},"-CRGbkxd7mZn_zkPq4SfR":{"uri":"/melonJS/docs/melonjs/Container.html#isFinite"},"DzdAHRhgiZ0jMVuwoslZe":{"uri":"/melonJS/docs/melonjs/Container.html#lookAt"},"wWxULAw1BbVZmXwXLCssh":{"uri":"/melonJS/docs/melonjs/Container.html#moveDown"},"18aPxArh-o546M_Xlidan":{"uri":"/melonJS/docs/melonjs/Container.html#moveToBottom"},"x6ilfb61un_ZXghRzGydH":{"uri":"/melonJS/docs/melonjs/Container.html#moveToTop"},"2W_VjnYE1xlDY9qu-_DZO":{"uri":"/melonJS/docs/melonjs/Container.html#moveUp"},"7mSjNZJgTvNdgANL2IpR_":{"uri":"/melonJS/docs/melonjs/Container.html#onChildChange"},"2XJz1QnDcvv-1vwHieVOs":{"uri":"/melonJS/docs/melonjs/Container.html#onCollision"},"AT7BLBVCgLb2S10U8z9Z3":{"uri":"/melonJS/docs/melonjs/Container.html#onDestroyEvent"},"ftyezYSrvaYiBBe_1jixY":{"uri":"/melonJS/docs/melonjs/Container.html#overlaps"},"bocHOZHPb1Yf7JwRLfGwk":{"uri":"/melonJS/docs/melonjs/Container.html#postDraw"},"tgafTEeEeX_ZGvPjGVUMf":{"uri":"/melonJS/docs/melonjs/Container.html#preDraw"},"xTt4jp2dlkF3pGlnqCQln":{"uri":"/melonJS/docs/melonjs/Container.html#recalc"},"PR87e9Kd04RRtX191DCDg":{"uri":"/melonJS/docs/melonjs/Container.html#removeChild"},"RD84mYPocPKeeq29sLUw7":{"uri":"/melonJS/docs/melonjs/Container.html#removeChildNow"},"IwrzVSGRAuSNZx5NJodpN":{"uri":"/melonJS/docs/melonjs/Container.html#reset"},"-Ck0qg4zQK3_AbCm7r5Ap":{"uri":"/melonJS/docs/melonjs/Container.html#resize"},"ZNOq5M08zn5-v4I1RdbJL":{"uri":"/melonJS/docs/melonjs/Container.html#rotate"},"5aK-vVFmTXHk5ettdzE0X":{"uri":"/melonJS/docs/melonjs/Container.html#scale"},"Hd_5s_mcE41yzAAz9ys-H":{"uri":"/melonJS/docs/melonjs/Container.html#scaleV"},"H1R_EPkVcGuYuQdKfjaJO":{"uri":"/melonJS/docs/melonjs/Container.html#setChildsProperty"},"j8vTdL6YbhUJTbr1heZYu":{"uri":"/melonJS/docs/melonjs/Container.html#setOpacity"},"JO9D8crucqQ2brKubOXuZ":{"uri":"/melonJS/docs/melonjs/Container.html#setShape"},"OHKFrlSt7DDsIAnf5qdH7":{"uri":"/melonJS/docs/melonjs/Container.html#setVertices"},"h4MdQnrueDr7krZnBnfpK":{"uri":"/melonJS/docs/melonjs/Container.html#shift"},"LXEsC5puA-xbIqw7E-bWT":{"uri":"/melonJS/docs/melonjs/Container.html#sort"},"EnBE-pmYvmG0_nWkf7Y49":{"uri":"/melonJS/docs/melonjs/Container.html#swapChildren"},"atBbdjOL4f6EZvl735qtu":{"uri":"/melonJS/docs/melonjs/Container.html#to2d"},"v4tjHze2spvwCdaExKN-n":{"uri":"/melonJS/docs/melonjs/Container.html#toIso"},"XADRs9FwCWcd5GuFoRgRI":{"uri":"/melonJS/docs/melonjs/Container.html#toPolygon"},"rUPbWdQvdlIEeKItAGB2F":{"uri":"/melonJS/docs/melonjs/Container.html#transform"},"c79uE6CXe4LckYWNNBc4C":{"uri":"/melonJS/docs/melonjs/Container.html#translate"},"rHfRZajePBtEtoz0F5ID5":{"uri":"/melonJS/docs/melonjs/Container.html#union"},"j-nbLivSDSYWFsjCFBkoL":{"uri":"/melonJS/docs/melonjs/Container.html#updateBounds"},"Lud_XW5X3hl5a7TM34MXx":{"uri":"/melonJS/docs/melonjs/Container.html#draw"},"XbnNURY1gYemKs-qC8WWE":{"uri":"/melonJS/docs/melonjs/Container.html#update"},"RIJ6cJhSnCmUSM6fzfyEp":{"uri":"/melonJS/docs/melonjs/Container.html#onAnchorUpdate"},"cwUX9OCGqceYjLKrvCFA5":{"uri":"/melonJS/docs/melonjs/Detector.html"},"ozwhPRst8lVZjhXTZYCr0":{"uri":"/melonJS/docs/melonjs/Detector.html#response"},"we7gfstVPMMCNzUo1Lukf":{"uri":"/melonJS/docs/melonjs/Detector.html#collides"},"J1ppEB16KcPLNR46EL_Sp":{"uri":"/melonJS/docs/melonjs/Detector.html#constructor"},"dnsGPZYL7T-aQhXnhTIXT":{"uri":"/melonJS/docs/melonjs/Detector.html#shouldCollide"},"Y3nPGd3ehaLlX8P14sCrk":{"uri":"/melonJS/docs/melonjs/Draggable.html"},"t7HlL8Sug-lDGWLR7gFAV":{"uri":"/melonJS/docs/melonjs/Draggable.html#alpha"},"yAh6yskvgV0cqc01_bVeC":{"uri":"/melonJS/docs/melonjs/Draggable.html#alwaysUpdate"},"Qj-xQBpywUYa7_KFP1Q7E":{"uri":"/melonJS/docs/melonjs/Draggable.html#ancestor"},"BGMF0bV2ywQFkoHXvWJL7":{"uri":"/melonJS/docs/melonjs/Draggable.html#anchorPoint"},"KB3eVcVORy1Ocb8d2rELc":{"uri":"/melonJS/docs/melonjs/Draggable.html#autoTransform"},"apFzMms08uNMctYoT3RvD":{"uri":"/melonJS/docs/melonjs/Draggable.html#blendMode"},"CdMTbT6Rj_TVycw5dS9Aq":{"uri":"/melonJS/docs/melonjs/Draggable.html#body"},"iL6lxvYvRHL6pj0bu773q":{"uri":"/melonJS/docs/melonjs/Draggable.html#bottom"},"kJRsBnsW8vpDubT14HPMj":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerX"},"E_A3I3wj_A6Kb4RIpzp8I":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerY"},"HA3wC2ed7OedJ56CPbTwg":{"uri":"/melonJS/docs/melonjs/Draggable.html#currentTransform"},"xrL4Y1bk_T9R7g-CtBV_w":{"uri":"/melonJS/docs/melonjs/Draggable.html#depth"},"8MsSwJafWXVN5fuMHw5oq":{"uri":"/melonJS/docs/melonjs/Draggable.html#floating"},"DxydSOGYKALXrUEhboMgF":{"uri":"/melonJS/docs/melonjs/Draggable.html#GUID"},"dbwyzGmJexRAC_0h0emMl":{"uri":"/melonJS/docs/melonjs/Draggable.html#height"},"ZHnlwr1MIRdCiHM9C1FFG":{"uri":"/melonJS/docs/melonjs/Draggable.html#inViewport"},"NXU1OTOypJMI_Koi_ebGF":{"uri":"/melonJS/docs/melonjs/Draggable.html#isDirty"},"8qKQxYdZbEW-giFi4DKa8":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedX"},"161z9E772EnYrc_sqgMG6":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFlippedY"},"x-iHQ8EsloCZct84yYi3j":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFloating"},"AUuOj1KM5nzdUTH0op1WG":{"uri":"/melonJS/docs/melonjs/Draggable.html#isKinematic"},"Cp3Xfww8VU1gHFLcnwM5z":{"uri":"/melonJS/docs/melonjs/Draggable.html#isPersistent"},"AmHLlD9AuNwzcWS8dHnAT":{"uri":"/melonJS/docs/melonjs/Draggable.html#left"},"ieDU95nvm0lihU6i_Z7IB":{"uri":"/melonJS/docs/melonjs/Draggable.html#mask"},"Vk0fhK1ReRSeKsU9F0m8C":{"uri":"/melonJS/docs/melonjs/Draggable.html#name"},"FYQa_DAgH_PXiSWIKTwM1":{"uri":"/melonJS/docs/melonjs/Draggable.html#onVisibilityChange"},"limnC9tsVJvkeIfScZq-N":{"uri":"/melonJS/docs/melonjs/Draggable.html#points"},"XqPabyLr_04oiRRA7hasC":{"uri":"/melonJS/docs/melonjs/Draggable.html#pos"},"trACA9lngJyCSHUq3djtv":{"uri":"/melonJS/docs/melonjs/Draggable.html#right"},"RJ6b1bS9D949n-_w1E_pS":{"uri":"/melonJS/docs/melonjs/Draggable.html#shader"},"GEU9b4IkFBhmJcoQ9qdyq":{"uri":"/melonJS/docs/melonjs/Draggable.html#tint"},"786JDCg6KuyaVIly-Agp_":{"uri":"/melonJS/docs/melonjs/Draggable.html#top"},"Mo5mM2cuL6yiQiP2RsOsX":{"uri":"/melonJS/docs/melonjs/Draggable.html#type"},"jOkntXvA2sbxGfzYIEt-h":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateWhenPaused"},"89nR7OZw_MKFth3MoFhim":{"uri":"/melonJS/docs/melonjs/Draggable.html#width"},"6JaNgpePloRiH-pT9J0EB":{"uri":"/melonJS/docs/melonjs/Draggable.html#angleTo"},"iVlq7FkQSpBBs31RITMeu":{"uri":"/melonJS/docs/melonjs/Draggable.html#centerOn"},"dVhAUqqr5EVm_V340VN4_":{"uri":"/melonJS/docs/melonjs/Draggable.html#clone"},"iXP4YOgR-OhTGBEwMcnmF":{"uri":"/melonJS/docs/melonjs/Draggable.html#constructor"},"U2GVSsJYsHyH7Tp2fyP5Q":{"uri":"/melonJS/docs/melonjs/Draggable.html#contains"},"r7oACvtCmtl4l869WJ22-":{"uri":"/melonJS/docs/melonjs/Draggable.html#copy"},"cyTyU1prE86EUiMwt2wEM":{"uri":"/melonJS/docs/melonjs/Draggable.html#distanceTo"},"7qyhfSSg84sT_56G6Bgwo":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragEnd"},"IisfepetnHI55s6eXiG99":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragMove"},"yDhPKY2nyym2gl15OQOsi":{"uri":"/melonJS/docs/melonjs/Draggable.html#dragStart"},"BwzazS_GRpGX_K-bCe0-m":{"uri":"/melonJS/docs/melonjs/Draggable.html#draw"},"8Hv6TWLxkt3TyqNIM_v54":{"uri":"/melonJS/docs/melonjs/Draggable.html#equals"},"QmtFSsTleJaoHk7nbUeU8":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipX"},"eFSkTbfCnNEK0y9pJEZ_u":{"uri":"/melonJS/docs/melonjs/Draggable.html#flipY"},"e0J8fYbZYOUVSrhdqEwtG":{"uri":"/melonJS/docs/melonjs/Draggable.html#getAbsolutePosition"},"yI3et022SK6jg9zbSPp_b":{"uri":"/melonJS/docs/melonjs/Draggable.html#getBounds"},"JKwi8_PxCYZ6Jv8N0IRck":{"uri":"/melonJS/docs/melonjs/Draggable.html#getIndices"},"sTlicp8GIO2B1X3Ny3gmJ":{"uri":"/melonJS/docs/melonjs/Draggable.html#getOpacity"},"hNZKLhW8J20HtocqXqm1o":{"uri":"/melonJS/docs/melonjs/Draggable.html#isConvex"},"kG0UUjs-MBrV8UyIV7u9u":{"uri":"/melonJS/docs/melonjs/Draggable.html#isFinite"},"NvhAFa5ETK1NYaXLQPpP1":{"uri":"/melonJS/docs/melonjs/Draggable.html#lookAt"},"mc_u2D4MlXhGw5BasLbLw":{"uri":"/melonJS/docs/melonjs/Draggable.html#onCollision"},"9ele78I9KFcwBqk7NfIAg":{"uri":"/melonJS/docs/melonjs/Draggable.html#onDestroyEvent"},"N0tk5efGnHQs2jR3TYMjy":{"uri":"/melonJS/docs/melonjs/Draggable.html#overlaps"},"PsZygMuMLuy5fi9DWqIA9":{"uri":"/melonJS/docs/melonjs/Draggable.html#postDraw"},"SbPXS5YeqkJICEKmBDAO1":{"uri":"/melonJS/docs/melonjs/Draggable.html#preDraw"},"s0pe00m96UnzNAo_Zq3pA":{"uri":"/melonJS/docs/melonjs/Draggable.html#recalc"},"ILqC7-pjUM9xDKWqpVsOn":{"uri":"/melonJS/docs/melonjs/Draggable.html#resize"},"jYa281SVfdyzc_sbzltCx":{"uri":"/melonJS/docs/melonjs/Draggable.html#rotate"},"yZReo7Vp0LzZCmJM6P64t":{"uri":"/melonJS/docs/melonjs/Draggable.html#scale"},"tDRF3t9Is4502MRt9ZD19":{"uri":"/melonJS/docs/melonjs/Draggable.html#scaleV"},"gPJkvE_R29yFq5mqpUP25":{"uri":"/melonJS/docs/melonjs/Draggable.html#setOpacity"},"CptS8LyZWMiZdHXl1VX9w":{"uri":"/melonJS/docs/melonjs/Draggable.html#setShape"},"Y7ZLZsqZ37X_2AnCuw8o3":{"uri":"/melonJS/docs/melonjs/Draggable.html#setVertices"},"RbCE1SfZpwkjSeRdXYbLr":{"uri":"/melonJS/docs/melonjs/Draggable.html#shift"},"7MFER4_OiMXkLJTD_q6a7":{"uri":"/melonJS/docs/melonjs/Draggable.html#to2d"},"1sMtzSj9NH6d5ZE7juKp5":{"uri":"/melonJS/docs/melonjs/Draggable.html#toIso"},"MPNHAUEZa-f3a16_tXAW5":{"uri":"/melonJS/docs/melonjs/Draggable.html#toPolygon"},"IlHXvEg9CEtBq5eBZ3mbk":{"uri":"/melonJS/docs/melonjs/Draggable.html#transform"},"TQnuqngL7LnUWfm1YrlP1":{"uri":"/melonJS/docs/melonjs/Draggable.html#translate"},"GxUPiblae9e62fCxubq-E":{"uri":"/melonJS/docs/melonjs/Draggable.html#union"},"baWSsIVsSpIagSGvBrIcw":{"uri":"/melonJS/docs/melonjs/Draggable.html#update"},"faN42LjSSTXmkBmBtrYYD":{"uri":"/melonJS/docs/melonjs/Draggable.html#updateBounds"},"ct6qC2fFCtNIPBvkgy75Y":{"uri":"/melonJS/docs/melonjs/Draggable.html#initEvents"},"0Cpet3004YoZg8uN6OYMk":{"uri":"/melonJS/docs/melonjs/Draggable.html#onAnchorUpdate"},"fGukkAedFzXJMreRvqJpK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html"},"f6FSXp-wkV6FQXNq-60PG":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alive"},"f970FuCxSuAltnB_0jVw7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alpha"},"vekZ6VTklw9JSXDFiW64d":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#alwaysUpdate"},"NHSWEyKd7yUUY85OUCu7X":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#ancestor"},"kcbm0Q7iTVKDHzmss-82g":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#anchorPoint"},"llVdBBFPoQfeMMtkro4lg":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#autoTransform"},"0QSxSLTU_enSrHrRkj4JC":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#blendMode"},"nVhjCxQ_WQ2f7DZNzjRYK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#body"},"sm8jNy01o8QLA9tUadCJK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#bottom"},"gyFbruYx_VRHuths6Z2-T":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerX"},"9c8FMmmNzsqGhToiq-vT8":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerY"},"7WscdZvPni16C_oTW0Ebo":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#currentTransform"},"cj97nLFLOUVxgzLeB3DGi":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#depth"},"DeXSqFWFxgypryPg0K184":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#floating"},"FaAz3JbxIbwbJgOdWp2iA":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#GUID"},"PXr0_UZhsjBWaN1uLoIeB":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#height"},"wVY7qn1y6Ej5Pnrot9Nsn":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#id"},"xx0nkVKTOXrrSnw7x7OcP":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#inViewport"},"_B5rfjKq5MVvq8z8qGK8X":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isDirty"},"cNy2KJQ8oS_vaXlSxzlTI":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedX"},"PqcAUDCXgG3UEY_mkaui8":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFlippedY"},"ozHbfn42JRL_l6wx7TWwb":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFloating"},"0rpC5-DXYLHrMfGE_eqAX":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isKinematic"},"t-BQnUeUaTaNkGGmDmXhd":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isPersistent"},"hkCuKVw8bEDSQ5fblsvUL":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#left"},"6NjxdBUyjxrAlA1pJYqvm":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#mask"},"EqMjImmSu62mXDX2ahhNe":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#name"},"dALHNAh1aB4CNZXqPP94m":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onVisibilityChange"},"2zY96JG7p7tdpd6-DnUlK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#points"},"ZPx83pyepMTfSyxPEnso3":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#pos"},"OULtNtoN72O1RpPf0JtBV":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#renderable"},"1hYJCztAXDEutmBxUH5q8":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#right"},"EF9AY2olb6FJx-TKNyAx4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shader"},"DM81s0cj7GGc8TH5lfXDu":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#tint"},"dBvZZz1weS9rNmY3JrSf4":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#top"},"_mYA2qK-824x0pmRUhwDl":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#type"},"a17WmkcvMafDKdypQC2eF":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateWhenPaused"},"W8tRRU-3JzoPAEJcnpHtd":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#width"},"y0wjJ2WdmqubhZ8WWf3xZ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#angleTo"},"UjamGSz8r0LhTV_MB5WZc":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#centerOn"},"3tR0aB9GrnpolwLxSyt6i":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#clone"},"8JhukCTkKoPWkeSXTZNLr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#constructor"},"VjMME3e9zARos2ZOtyY47":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#contains"},"1ViKgZWyqry4FOAcZ08Ge":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#copy"},"x_CRW5U05-bpp09tiTEH9":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#distanceTo"},"_IPgFNjoN6ryCnoMF90s0":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#equals"},"a7cxqGqcpbxrD1ynoTf-v":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipX"},"LybqgA5xlCvIutpIMm26X":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#flipY"},"IKcZ0KQZGcZwPZ__PoWRs":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getAbsolutePosition"},"ogNSBnZlg3IayczxPO_xE":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getBounds"},"XOFHitivNLdGZhoFcjIZr":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getIndices"},"X9RE6PzYdKOFe_q-PhtuS":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#getOpacity"},"vXoh4qP2M5eaPjp4RK2SK":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isConvex"},"l7cMIz0H7FyLIXoBgPpoh":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#isFinite"},"9RA02CbSb2Ud1COQUMv4W":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#lookAt"},"nTv7lenfsBNu_DbKFVPQE":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onBodyUpdate"},"tfGSkS_uPcsSwDfwHrrn7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onCollision"},"qkqKiC_Ca1rp7LAgljdTq":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDeactivateEvent"},"htbBL5ppsiyXDHc3cRT8H":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onDestroyEvent"},"j9z2uzrYe54uzrbWVtL-8":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#overlaps"},"q-mlSK74xsOX2DeIywUMU":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#postDraw"},"JeqEcHCWJVWnp6G3Rj3U6":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#preDraw"},"_my27HFsPJ0HJkRgymbj7":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#recalc"},"W79rZNtBvCosQGSaa1lZe":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#resize"},"AAhwAsODbOcNRHcUe6G4e":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#rotate"},"Pbp33_9Eaw65sH7JJJsmT":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scale"},"q6hDTtN5jo0zkIGemDUos":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#scaleV"},"aBsCS_EsA68fMJum9dT70":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setOpacity"},"dotQO0RzIEN41l3BFJyoG":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setShape"},"wiDirPiKi9x95GM7WPIsJ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#setVertices"},"5oUyHJm89EVCKdAsz1LaQ":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#shift"},"xtVM0sMZyyf-UFbcNVS7O":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#to2d"},"2bj4FU9iBCz2LlRymeX2C":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toIso"},"RX15Cfp7ieMHkMNgHZz5j":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#toPolygon"},"7goQJApzbhC_LczZqld-_":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#transform"},"gxei6lRzCm57DZbRy10lN":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#translate"},"04jKiFAxJ2yE1dOtpDthq":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#union"},"qgT9QQH9jI45Mh_R-LiJT":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#update"},"SQ60-7dujmoIgH5TaLZ13":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#updateBounds"},"H9fl_dboWXZ57TK9Hvo5j":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#draw"},"KUt2BLconA0o2sTKGOGTa":{"uri":"/melonJS/docs/melonjs/DraggableEntity.html#onAnchorUpdate"},"svjfD0STHdrO0bUpdj3Mx":{"uri":"/melonJS/docs/melonjs/DropTarget.html"},"IdezZ_IgjjGS7HXViAo-w":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alpha"},"FTx2Yjol58y1-bCOKzgxL":{"uri":"/melonJS/docs/melonjs/DropTarget.html#alwaysUpdate"},"vvYSDIr6cit0klhFA7Nm_":{"uri":"/melonJS/docs/melonjs/DropTarget.html#ancestor"},"vyQLm8whY0u3xk_vQOtWl":{"uri":"/melonJS/docs/melonjs/DropTarget.html#anchorPoint"},"w05TwNrWrVxlR-x7YRb3b":{"uri":"/melonJS/docs/melonjs/DropTarget.html#autoTransform"},"wRQBE7_XAjy25-kd4Yd74":{"uri":"/melonJS/docs/melonjs/DropTarget.html#blendMode"},"l1jgs-2El3_dIHNVMIEng":{"uri":"/melonJS/docs/melonjs/DropTarget.html#body"},"yIZYQ7tluBGl2KyfYGCpB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#bottom"},"mkTKMpAAkYp-WA7UPh9O7":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerX"},"BIA0AgxVx0-z2Zc0u2s3r":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerY"},"tUYw4MYk7Vk21NMF_4HAm":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkMethod"},"3APBAXyic3qxLWdPItKry":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_CONTAINS"},"duGZsBpSkM6CABK9Am7tS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#CHECKMETHOD_OVERLAP"},"SIxe09xpmvwAWtzwWR2f0":{"uri":"/melonJS/docs/melonjs/DropTarget.html#currentTransform"},"EV5por_80emEqyxVOjbJN":{"uri":"/melonJS/docs/melonjs/DropTarget.html#depth"},"GGIoLcMSRDlUVoHkjy0Uk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#floating"},"406nsL2zWQeQvrZf9gCva":{"uri":"/melonJS/docs/melonjs/DropTarget.html#GUID"},"_xhoFznm3KfTYyjvsPls8":{"uri":"/melonJS/docs/melonjs/DropTarget.html#height"},"I1mxcQwYTGNftmIkBuHkK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#inViewport"},"nCtfR0y3IqciXzVyasgpw":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isDirty"},"Yq8lJS6hIrSHFoMee2JAg":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedX"},"P1TlzrCODrasKbVxVZKS0":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFlippedY"},"0pYOpmAGMKdBGwAQoFCXS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFloating"},"JmOuqAE8IM2WPdyvkGeSJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isKinematic"},"PglpXbWYse_ltXWiWjkx3":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isPersistent"},"84n8d9Qdkqbs7_VNXxC02":{"uri":"/melonJS/docs/melonjs/DropTarget.html#left"},"WgRThdFtzOT-6PL_BboJe":{"uri":"/melonJS/docs/melonjs/DropTarget.html#mask"},"IWcB3ERP6tsfzVgzmg9-G":{"uri":"/melonJS/docs/melonjs/DropTarget.html#name"},"gy_FkHUIJrA7kXs7F6w8s":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onVisibilityChange"},"bqvJsVL54kOtnIYHZTEdj":{"uri":"/melonJS/docs/melonjs/DropTarget.html#points"},"bGbCni59e-TwhNFIHXNuU":{"uri":"/melonJS/docs/melonjs/DropTarget.html#pos"},"PoLykmAoakgn--p1uGdMe":{"uri":"/melonJS/docs/melonjs/DropTarget.html#right"},"GMIxlShc4viUNJPiKsMDE":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shader"},"Z3UIp5RnI4LO2nGdpeStg":{"uri":"/melonJS/docs/melonjs/DropTarget.html#tint"},"n8Fz72qVciV8DW-OW2fgx":{"uri":"/melonJS/docs/melonjs/DropTarget.html#top"},"HxsS7uGEarmHMcRI0AKOp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#type"},"6ETcn8XrCf2vvhk_zkWon":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateWhenPaused"},"SGOzT5p0xRDvT5lPmLvJk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#width"},"OAnfUxpCRl5fLCaDLSzlF":{"uri":"/melonJS/docs/melonjs/DropTarget.html#angleTo"},"Y-2OJlM4nRsp3XrHjmKyD":{"uri":"/melonJS/docs/melonjs/DropTarget.html#centerOn"},"GIR-PQws9Pcsu89eR6pno":{"uri":"/melonJS/docs/melonjs/DropTarget.html#checkOnMe"},"cqk_GL7S3BFGPKdWmtL-8":{"uri":"/melonJS/docs/melonjs/DropTarget.html#clone"},"Wj-wNCEWeyR-1UIwCo4sL":{"uri":"/melonJS/docs/melonjs/DropTarget.html#constructor"},"GcGQgneUt_l6yLdoOeyoV":{"uri":"/melonJS/docs/melonjs/DropTarget.html#contains"},"A6-MLZ4zP__5bnaawik5E":{"uri":"/melonJS/docs/melonjs/DropTarget.html#copy"},"s3bR_l9e0zy0-q03vdV-z":{"uri":"/melonJS/docs/melonjs/DropTarget.html#distanceTo"},"CsDdTKOlnn9eaQ-4NLjTi":{"uri":"/melonJS/docs/melonjs/DropTarget.html#draw"},"ohO1Htaj5pJSedilaxH0s":{"uri":"/melonJS/docs/melonjs/DropTarget.html#drop"},"wy8ijGZ0VxDuPAiAXSJpZ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#equals"},"UTdaSxfNdEChhamJnuNLK":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipX"},"OBe0w9OqtCaG_PJ7RFc48":{"uri":"/melonJS/docs/melonjs/DropTarget.html#flipY"},"kH9w0xZr6LS2cC2HSnM1m":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getAbsolutePosition"},"JFolz9fyNkYY2M30RCbyU":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getBounds"},"DdCNAgnZ8M6NTPTiKJyKY":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getIndices"},"QQztgGl-LKR1bR46SDiZB":{"uri":"/melonJS/docs/melonjs/DropTarget.html#getOpacity"},"Vj9eHiIpDdECEs_Fx9n8E":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isConvex"},"ORuUErKDPHSBojw8ZtQoq":{"uri":"/melonJS/docs/melonjs/DropTarget.html#isFinite"},"1oX04J0-zJTACr4ZIzG4Y":{"uri":"/melonJS/docs/melonjs/DropTarget.html#lookAt"},"lwfgUuEmSGE5hPht11AYI":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onCollision"},"pZuenmnvFtFGFI99bLZ8R":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onDestroyEvent"},"7G2SbKuSgE0S4gTS66P9I":{"uri":"/melonJS/docs/melonjs/DropTarget.html#overlaps"},"MrFkEgK5_TkkqjayyFYBo":{"uri":"/melonJS/docs/melonjs/DropTarget.html#postDraw"},"772R0LBEKz0eNTU_LzBNp":{"uri":"/melonJS/docs/melonjs/DropTarget.html#preDraw"},"dHBu98X9Bt9V-xQpO2K5d":{"uri":"/melonJS/docs/melonjs/DropTarget.html#recalc"},"NHj_ITQtgVLvTF4PQO0Oy":{"uri":"/melonJS/docs/melonjs/DropTarget.html#resize"},"dLQaRGpVrKdlx7wUonDeR":{"uri":"/melonJS/docs/melonjs/DropTarget.html#rotate"},"FaWI2-azSVn6hboln0Rxi":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scale"},"i2POBbaQRr8peTIMKxZZs":{"uri":"/melonJS/docs/melonjs/DropTarget.html#scaleV"},"Pyf1BkH3mY52S1ltTUK3B":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setCheckMethod"},"bx_FapsLHvXc87HLQZs-I":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setOpacity"},"Xf7Uxa8UfzKqTcsgwFeSJ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setShape"},"S3uDOW3jzHlRg3-GH0N5r":{"uri":"/melonJS/docs/melonjs/DropTarget.html#setVertices"},"7H_U1SS5Pge-QA_s0_l4l":{"uri":"/melonJS/docs/melonjs/DropTarget.html#shift"},"bQqL0_7n-976STQS5mYUk":{"uri":"/melonJS/docs/melonjs/DropTarget.html#to2d"},"jJkxgssXPzA9rfka_bvkS":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toIso"},"fIjCccUuqYzlp11LavbqH":{"uri":"/melonJS/docs/melonjs/DropTarget.html#toPolygon"},"tEsjYRaqP578YxMcM0xoh":{"uri":"/melonJS/docs/melonjs/DropTarget.html#transform"},"wq2k86niB_YG9q4zT5snj":{"uri":"/melonJS/docs/melonjs/DropTarget.html#translate"},"CyPiroXkHNq3jfpkq4DYm":{"uri":"/melonJS/docs/melonjs/DropTarget.html#union"},"8KIhc-PR5COCx8_7x_aG5":{"uri":"/melonJS/docs/melonjs/DropTarget.html#update"},"LhzGB22GLAzhz37WCM-cZ":{"uri":"/melonJS/docs/melonjs/DropTarget.html#updateBounds"},"HhvfPc_8amJ1GN8s-cK22":{"uri":"/melonJS/docs/melonjs/DropTarget.html#onAnchorUpdate"},"_-Vg6AR4YWGFHti6rzk3x":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html"},"ctoG7I0_PGwVMew0127OY":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alive"},"74U3l8iJwAZzSZ-T0wN9L":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alpha"},"F0Y7A42RC0WAHEGl15kxk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#alwaysUpdate"},"ZYRLGM9f_P-JROP2rYqCA":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#ancestor"},"Z1OCeopHZOmAP08cDnc0x":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#anchorPoint"},"BOfmE484QDz4Nm4PMm5Hy":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#autoTransform"},"ZQ8sBDMGpgTEGXLFNeFcr":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#blendMode"},"dYQTwjni8-KzClYZvY3Eo":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#body"},"4hF940UPF38O43u3gPzNq":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#bottom"},"He6fZ2Wai-QFpUuBaj-AW":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerX"},"m4D3eXdJP05AVN53gQApz":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerY"},"MF2qp2iN1Tvh6Dn7eRqjb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#currentTransform"},"ig5UFn5DBhLmorMxcoSxk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#depth"},"tUFa8EFe159JVey8Q73gh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#floating"},"UBpbPjAllwkaiHB_28OhE":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#GUID"},"80tFH6CIjsZYy30AeiaVd":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#height"},"QAvr_y7pAw5vGbAYGIOEg":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#id"},"5fZ0MUsi_VBjXBpAAZPw-":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#inViewport"},"iFOv1nyg4_fKwOKc-xquq":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isDirty"},"y0m9TdcaIFGI4kij40JQ8":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedX"},"JBBwjcbyX4jgX1zcacqnn":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFlippedY"},"xlquwEwXIQ5nGGJ4zcwnv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFloating"},"y9yu8Z59gTgbhVmu42DSz":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isKinematic"},"5iyV5WKW62rlsX8_Jo7Jh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isPersistent"},"JXbE48_CMNm43cCfA0HGi":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#left"},"DHbhIniktEVGafqld3GQG":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#mask"},"um8AJkabghhc_IKR5p0iI":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#name"},"CrHlQhUh9AQ6aL6rdDkUP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onVisibilityChange"},"lYuJyVTvOO-EPfRtzyX61":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#points"},"lfq7O-WwJEhnRI709po33":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#pos"},"BXqZzCl2Mn7G-In-CZ1C_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#renderable"},"oaNdphKjOHdtg_UCeiz1Z":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#right"},"8dxsDW_5roRR1wHoy0uap":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shader"},"bSOiLSAsHC11j50L_ohl9":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#tint"},"OZ738Tfdll7MiVoORXr2v":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#top"},"P_LiKRtauYzvNljiKoubN":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#type"},"O2hkDhP9zIyxbs6SeEE8y":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateWhenPaused"},"Mshb9tWkZPNcyLbGXvCNC":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#width"},"DP9kv7LfRk8jdabfYdN2w":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#angleTo"},"BLeC8czzoLby_75gZeqUP":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#centerOn"},"2WzCd_OgGinyJU11uM6Oj":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#clone"},"sEKgK0c_x7jdfY5l6yEZf":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#constructor"},"QdVGAv1HAuBQGZM0Ow7jR":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#contains"},"k-W8od21DlvY4mCbRygeH":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#copy"},"z5F2xi6yj-_yThhEpuvTl":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#distanceTo"},"p4wJSUurK25U7EJJM44vt":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#equals"},"eA_pM0E16Yau_UGj_6Qte":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipX"},"odKH7tJ4yAHjoW9Y3N0k3":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#flipY"},"PSDWsImR9ZRfuypZyFicB":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getAbsolutePosition"},"SNMHoJrHg7uDLlDjOuicv":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getBounds"},"pR9h--YmEHtsPWVsQqZK9":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getIndices"},"omOlrRxK1En77QlbGCVR9":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#getOpacity"},"lfE9cyDtBfd2lkZmlpbQq":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isConvex"},"vE4S-XBsA-sB__B_vF60m":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#isFinite"},"87VAu2KvhsZXAXSfhcVcQ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#lookAt"},"Y_iR3TeJZchjYVf5Q-B5A":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onBodyUpdate"},"MbJmWbbxFxXgO0LhHXX_n":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onCollision"},"pWtF8AWSlwyOr-6MFqJvy":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDeactivateEvent"},"kvFpx_0TO_7EqNNKJzJTh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onDestroyEvent"},"0yeXGZuUyixNydMzAqFhT":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#overlaps"},"YAV6PJZwO3Zur9ES9i0y_":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#postDraw"},"EqLL6ieZ8vhiJJYixC-A1":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#preDraw"},"aJl4n03wcUXCGgvSo2xXk":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#recalc"},"4M25Q2X4mQN99KmJIBJBM":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#resize"},"Ggo4mwSfX3verzj74xm7S":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#rotate"},"NCV4YmuGmEoH_mHeUCH_T":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scale"},"Dg-bMx5BTMLZZdTRh3Sar":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#scaleV"},"BPLRkPvV5fR9Erpn60hfE":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setOpacity"},"EKMGQGqdPt1PiEnqkekeh":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setShape"},"hy771Ki_3Ww8_7MjOLhwX":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#setVertices"},"07k5-bep-niKBcc5RttNJ":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#shift"},"8mc5uSxPP8g-ofVBszmnn":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#to2d"},"3B1AoeVx4puMTJMPr970l":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toIso"},"oSvWf3uui9w4jPSHTjbVG":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#toPolygon"},"B7Xb0Nyei8Bp2R3R_GbqD":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#transform"},"DcfStlPH-Tw2rpDZzwdbb":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#translate"},"fsrMYmVjAlirCuQMhyXV5":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#union"},"-gikUJBD4IB2hjGgjbwkw":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#update"},"Tusyn5Y4X_Ts2wDwGvgJ3":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#updateBounds"},"GBpC3czNTJIvs_uV3GMYm":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#draw"},"KxJzu1ekSNPruWJYGslai":{"uri":"/melonJS/docs/melonjs/DroptargetEntity.html#onAnchorUpdate"},"3RJdOz7oF9MenmUyhmcYP":{"uri":"/melonJS/docs/melonjs/Ellipse.html"},"rEy63EwK3lKnfz6vbw58N":{"uri":"/melonJS/docs/melonjs/Ellipse.html#pos"},"mm_ksUvhYrM68rkqnyipd":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radius"},"aI4iMpJfl_Z956cpjb6T7":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusSq"},"VaJ93H8fY-p2Vp1245UQE":{"uri":"/melonJS/docs/melonjs/Ellipse.html#radiusV"},"2EGqYCswslmKkIVSigJXF":{"uri":"/melonJS/docs/melonjs/Ellipse.html#ratio"},"yfrheqwuM5fM5hKMMXXw_":{"uri":"/melonJS/docs/melonjs/Ellipse.html#type"},"Srg5HBeCevn-kQOwR0jKt":{"uri":"/melonJS/docs/melonjs/Ellipse.html#_bounds"},"wuyQFfClHweC5QqhsQb1K":{"uri":"/melonJS/docs/melonjs/Ellipse.html#clone"},"k165yR7d-vkyfL13n21VB":{"uri":"/melonJS/docs/melonjs/Ellipse.html#constructor"},"1hHFCtYSDejbRjlHuBVeR":{"uri":"/melonJS/docs/melonjs/Ellipse.html#contains"},"K_gx2IU3isi8iS4WyWMZh":{"uri":"/melonJS/docs/melonjs/Ellipse.html#getBounds"},"Dv_FrpVfkM0UAuGdmVd0G":{"uri":"/melonJS/docs/melonjs/Ellipse.html#rotate"},"9DAVg76-ItlziCr_AUKw9":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scale"},"wfyg07UOtKA6kdRQSjvIq":{"uri":"/melonJS/docs/melonjs/Ellipse.html#scaleV"},"VALcNLujj0HCcO2ZZm4Po":{"uri":"/melonJS/docs/melonjs/Ellipse.html#setShape"},"k5U9bW6j-7tz3ZRr23PlJ":{"uri":"/melonJS/docs/melonjs/Ellipse.html#transform"},"LHWNsDJjaiE3ifBZ_NFYg":{"uri":"/melonJS/docs/melonjs/Ellipse.html#translate"},"iTc-cUvMcUepMWBHMAy8T":{"uri":"/melonJS/docs/melonjs/Entity.html"},"6zfIIt_6mAdmOaIUrzNbZ":{"uri":"/melonJS/docs/melonjs/Entity.html#alive"},"aPpHamc6VkFTciNxGc_KH":{"uri":"/melonJS/docs/melonjs/Entity.html#alpha"},"9oHxYdOvFssMw8XMkofGO":{"uri":"/melonJS/docs/melonjs/Entity.html#alwaysUpdate"},"-a3LvIirlwJNN9rbQemVz":{"uri":"/melonJS/docs/melonjs/Entity.html#ancestor"},"C4B0OtCI5Q0HU66DX9SUA":{"uri":"/melonJS/docs/melonjs/Entity.html#anchorPoint"},"MLY6pWOzg5ynWxsV7kyCC":{"uri":"/melonJS/docs/melonjs/Entity.html#autoTransform"},"IYH8fByq7gldF9UQNXDLn":{"uri":"/melonJS/docs/melonjs/Entity.html#blendMode"},"A0cpaVBKMNyH3e2UDEdGK":{"uri":"/melonJS/docs/melonjs/Entity.html#body"},"08GaNkcjMEDq8TTHYF-NT":{"uri":"/melonJS/docs/melonjs/Entity.html#bottom"},"BSVdsfjD-WQdqlChwpeox":{"uri":"/melonJS/docs/melonjs/Entity.html#centerX"},"iurwudvBSqbGiMBJajJ0N":{"uri":"/melonJS/docs/melonjs/Entity.html#centerY"},"psGE4Hc9eP9aWwAnxGPbc":{"uri":"/melonJS/docs/melonjs/Entity.html#currentTransform"},"rYcnRTWqxZNS1JFJz1Ovw":{"uri":"/melonJS/docs/melonjs/Entity.html#depth"},"2ndLZ7gH8ZslqDY3A39vf":{"uri":"/melonJS/docs/melonjs/Entity.html#floating"},"BMZm2QfQfPbN6iNAuMJZP":{"uri":"/melonJS/docs/melonjs/Entity.html#GUID"},"YcSCDle0zRhVbh2EHMPvf":{"uri":"/melonJS/docs/melonjs/Entity.html#height"},"4MG7CSnpHQgIXNp8uJrQC":{"uri":"/melonJS/docs/melonjs/Entity.html#id"},"_tIsCPct-l3lZS2DQzIMh":{"uri":"/melonJS/docs/melonjs/Entity.html#inViewport"},"y4xogGye2rVutEX1I2wEG":{"uri":"/melonJS/docs/melonjs/Entity.html#isDirty"},"LVcTm30gp8Dd_bGYQ1B1h":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedX"},"biaodhZb9oJS-oSFBVm42":{"uri":"/melonJS/docs/melonjs/Entity.html#isFlippedY"},"VX-QpejHUMAg-5rbaINy6":{"uri":"/melonJS/docs/melonjs/Entity.html#isFloating"},"mlzganTysvS0AkyDNJPF9":{"uri":"/melonJS/docs/melonjs/Entity.html#isKinematic"},"jBJbGpTsBbMoI444Z8fEm":{"uri":"/melonJS/docs/melonjs/Entity.html#isPersistent"},"BR0i3GnNLO4MkQOQ5B0VY":{"uri":"/melonJS/docs/melonjs/Entity.html#left"},"RcrPPE9ATFR7iAO8JU_1D":{"uri":"/melonJS/docs/melonjs/Entity.html#mask"},"S_KqWVcEx5uxhc0CLTb6p":{"uri":"/melonJS/docs/melonjs/Entity.html#name"},"FZhfxIHv1mlyqGMi-5QcJ":{"uri":"/melonJS/docs/melonjs/Entity.html#onVisibilityChange"},"2JqpUXKFtqRaxcKx8Iw-t":{"uri":"/melonJS/docs/melonjs/Entity.html#points"},"n6l46avfQegcn_PgrNkVu":{"uri":"/melonJS/docs/melonjs/Entity.html#pos"},"z9QQQYF5OtHcIECNjoMIY":{"uri":"/melonJS/docs/melonjs/Entity.html#renderable"},"NT92ZxKAZQ2esnVuIAMTc":{"uri":"/melonJS/docs/melonjs/Entity.html#right"},"WCG24VmFIzWnbPd3N1rn7":{"uri":"/melonJS/docs/melonjs/Entity.html#shader"},"2ArVeFUtqxavuBgpJ5hzA":{"uri":"/melonJS/docs/melonjs/Entity.html#tint"},"o_EmtO-DGwDnY7J1tA6Yo":{"uri":"/melonJS/docs/melonjs/Entity.html#top"},"oQhO7JGWp5yEgFRiq_3Kd":{"uri":"/melonJS/docs/melonjs/Entity.html#type"},"38gXULfFp8fFNsx8GnSNf":{"uri":"/melonJS/docs/melonjs/Entity.html#updateWhenPaused"},"9OTkWYbe48_FjhqLoICP_":{"uri":"/melonJS/docs/melonjs/Entity.html#width"},"TzH9lW6wnT_DUpdtQfCf6":{"uri":"/melonJS/docs/melonjs/Entity.html#angleTo"},"SEq1n0gPvWJ5NimCFFSuQ":{"uri":"/melonJS/docs/melonjs/Entity.html#centerOn"},"xAGtlnpd68TqlRTEghYaS":{"uri":"/melonJS/docs/melonjs/Entity.html#clone"},"9oX6fAP0QvTRGkYFWROA0":{"uri":"/melonJS/docs/melonjs/Entity.html#constructor"},"Ex1oYwID4yQlrEymKqzcw":{"uri":"/melonJS/docs/melonjs/Entity.html#contains"},"pN4GBTXceQSSbe6x55txx":{"uri":"/melonJS/docs/melonjs/Entity.html#copy"},"lTrMWDoDYuaMSjj_B56cI":{"uri":"/melonJS/docs/melonjs/Entity.html#distanceTo"},"SGMmI6rGHqLKhOFNDGF4L":{"uri":"/melonJS/docs/melonjs/Entity.html#equals"},"0z6MNxWPoFvP2TWJgcE87":{"uri":"/melonJS/docs/melonjs/Entity.html#flipX"},"yh4OqapeujgW6jk0Mz4_S":{"uri":"/melonJS/docs/melonjs/Entity.html#flipY"},"tYfzRbsU4_tN3-8hOVqG9":{"uri":"/melonJS/docs/melonjs/Entity.html#getAbsolutePosition"},"oweZl9mvP8LYzM9Arcdib":{"uri":"/melonJS/docs/melonjs/Entity.html#getBounds"},"qlO1T7At3-R_87BxIozsf":{"uri":"/melonJS/docs/melonjs/Entity.html#getIndices"},"-TpituV2isArBYAYcTdAW":{"uri":"/melonJS/docs/melonjs/Entity.html#getOpacity"},"cv0q_0YueutpMCbvI2mba":{"uri":"/melonJS/docs/melonjs/Entity.html#isConvex"},"6UpXM22uAx6MCxamsmeDQ":{"uri":"/melonJS/docs/melonjs/Entity.html#isFinite"},"DeIQqbvqB3OKT1UerEQSE":{"uri":"/melonJS/docs/melonjs/Entity.html#lookAt"},"lwZ4HLuv4G9La7S5g-RyQ":{"uri":"/melonJS/docs/melonjs/Entity.html#onBodyUpdate"},"4Nf1Jj6tu5jybG8j3eQ0I":{"uri":"/melonJS/docs/melonjs/Entity.html#onCollision"},"fq3Faox3jPqas7Yy4-4lH":{"uri":"/melonJS/docs/melonjs/Entity.html#onDeactivateEvent"},"YxJobLDCtmW7pH4B1z-AR":{"uri":"/melonJS/docs/melonjs/Entity.html#onDestroyEvent"},"nJbpL0jbD7Q6yPtfwrHDU":{"uri":"/melonJS/docs/melonjs/Entity.html#overlaps"},"rLyYSRZu5io2sGhpE_rnp":{"uri":"/melonJS/docs/melonjs/Entity.html#postDraw"},"2w_WJhKu1ASrlAO0xoeGV":{"uri":"/melonJS/docs/melonjs/Entity.html#preDraw"},"7K4vBfe9T02E4KFeTRqLd":{"uri":"/melonJS/docs/melonjs/Entity.html#recalc"},"Z1SUTFWhUQje648cMJVje":{"uri":"/melonJS/docs/melonjs/Entity.html#resize"},"Pzahu386ZKx70B-2Osipm":{"uri":"/melonJS/docs/melonjs/Entity.html#rotate"},"qhK207uoe0TMoiDuraGUj":{"uri":"/melonJS/docs/melonjs/Entity.html#scale"},"wN2Qn1asnxDNQAOMvPBbz":{"uri":"/melonJS/docs/melonjs/Entity.html#scaleV"},"aBd2I5Jy5gjkJ3Lmz2uHp":{"uri":"/melonJS/docs/melonjs/Entity.html#setOpacity"},"KGmV6CBxbkk28n4QkLXzy":{"uri":"/melonJS/docs/melonjs/Entity.html#setShape"},"6Y02IETOkVx2DqViBd88w":{"uri":"/melonJS/docs/melonjs/Entity.html#setVertices"},"p2FT-cSpiglaqZp_vUwP3":{"uri":"/melonJS/docs/melonjs/Entity.html#shift"},"iNDNvi-C48IQJIs_QOONJ":{"uri":"/melonJS/docs/melonjs/Entity.html#to2d"},"_JUmchxr0MiPYAvr6bqGu":{"uri":"/melonJS/docs/melonjs/Entity.html#toIso"},"TQHgVcdC2nPrg71f8oytG":{"uri":"/melonJS/docs/melonjs/Entity.html#toPolygon"},"fbKEtGy2NLkUSoO8Wa0ZX":{"uri":"/melonJS/docs/melonjs/Entity.html#transform"},"9WGHntz2u0aAgdAQZ120B":{"uri":"/melonJS/docs/melonjs/Entity.html#translate"},"BmTY0sc01_6dQbl9Yc1vR":{"uri":"/melonJS/docs/melonjs/Entity.html#union"},"ptfXZD3lWdJ2J4sf3JjsH":{"uri":"/melonJS/docs/melonjs/Entity.html#update"},"R7nr17vOgXUVjRAEljvxe":{"uri":"/melonJS/docs/melonjs/Entity.html#updateBounds"},"_YxiAXF5rks2gpd9JntoM":{"uri":"/melonJS/docs/melonjs/Entity.html#draw"},"3tznoTPgzl2RBMCZkWg91":{"uri":"/melonJS/docs/melonjs/Entity.html#onAnchorUpdate"},"V8IcEx5benKEW7KPeSoI_":{"uri":"/melonJS/docs/melonjs/GLShader.html"},"N5lUFiOmJsD0DOjp3TxWI":{"uri":"/melonJS/docs/melonjs/GLShader.html#attributes"},"fC__LZvk_95h1FGEzmcZE":{"uri":"/melonJS/docs/melonjs/GLShader.html#fragment"},"GhKcxtNlGkhPyNiIX5Q02":{"uri":"/melonJS/docs/melonjs/GLShader.html#gl"},"zpn_ohKakQ9jph5nsLmeg":{"uri":"/melonJS/docs/melonjs/GLShader.html#program"},"NfqfUqDNciDNyv77HxaEX":{"uri":"/melonJS/docs/melonjs/GLShader.html#uniforms"},"WF1PYMcXrnFvroJoUySuf":{"uri":"/melonJS/docs/melonjs/GLShader.html#vertex"},"d2zK0gsGVjBdtoDNv4X26":{"uri":"/melonJS/docs/melonjs/GLShader.html#bind"},"di8Mq-fnXoptg6jFMIEVY":{"uri":"/melonJS/docs/melonjs/GLShader.html#constructor"},"hhtlFfXYNaYjVh5kyVOyO":{"uri":"/melonJS/docs/melonjs/GLShader.html#destroy"},"9CyX2JpcaRrw4GF0VGqsH":{"uri":"/melonJS/docs/melonjs/GLShader.html#getAttribLocation"},"EMcKMPJ_nibNSYv8DjvWP":{"uri":"/melonJS/docs/melonjs/GLShader.html#setUniform"},"AYDmywHuVAeArJt4RT99l":{"uri":"/melonJS/docs/melonjs/GLShader.html#setVertexAttributes"},"-Ly46Qa8zXDNI5XAK0bOj":{"uri":"/melonJS/docs/melonjs/GUI_Object.html"},"kYgGpIs8BsP68XOy6-cyh":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alpha"},"TbJi2sZ8PbmrslYNeq0bL":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#alwaysUpdate"},"amwWbKoVuHXBMnIPNPnUD":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#ancestor"},"PddLhU9L_Z7y3LUu4phNd":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#anchorPoint"},"zKzmvjcIHQ4QyuTEAV_62":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationpause"},"qsjgkuPxZpYmiutCDDhVi":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#animationspeed"},"3q8K8GoAsSL1Nv6UN_Uvr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#autoTransform"},"3gD7NUvNsseitIdM6bhTH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#blendMode"},"--BejvhjAdLx2MXoRayKO":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#body"},"1ZeSRXR9GiVbrpt_g1TDF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#bottom"},"GjBs5yVOBFMYw5VEDl62T":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerX"},"ponc7NYpx8IxwYeiaGtWS":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerY"},"rtytJzrZvogKUx50w1veq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#currentTransform"},"w6lZ9h9idvkdoE_vww8u4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#depth"},"BuJ5vplU3a-7mx3YwWKIq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#floating"},"DHDFesvnGTa-ahDGcFglJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#GUID"},"z3kMQpDEEOldqybBzvN-e":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#height"},"jy2FAfgiG8khR2RdSouhX":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#inViewport"},"LElRcdJuAm5trSQdwdC0O":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isDirty"},"nXg_jPOzLETaC3cP9BoQO":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedX"},"_q7SIJYu6rCff9hzLiO_3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlippedY"},"8-4-KzYcmok6XJ7lVN8g2":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFloating"},"-J1I9X4J7ZfMf6XAtfewF":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isKinematic"},"3XpIDtz5QlIEsT9z99oRH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isPersistent"},"F8zUL047YUKkfE9dVvQg8":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#left"},"D8orbOB3OV42O9Pm5V_P4":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#mask"},"sChblDLOqzYY-vQMLODqU":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#name"},"WYiZfu74sOj5TqPcrN9yZ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#offset"},"CtztikxxIgPSPsv7OHEm1":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onVisibilityChange"},"EUvm4yRc9uPTNzauFwF2z":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#points"},"0RBwfQaMzXcm-AfOG4ofv":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#pos"},"1MQunokEnqIserylH7G-s":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#right"},"SqEH5UOnyLBO9BErH6ZD5":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shader"},"cN5t6sJyar155ntmIvdxd":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#source"},"1fMd29PD2gkD21WQN397x":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#tint"},"xo5Sahe9QP5RDX0VW73wK":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#top"},"7rwtMo4_ME44tGDj4mpH3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#type"},"f_eoDZ4EJ9H-cqnkuT9E3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateWhenPaused"},"6ZOGDl4kOyHuWthSGYALS":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#width"},"tc3LuVhkaCuPLs082kum6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#addAnimation"},"meiAOcxgERx44aPWPhng3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#angleTo"},"5dnpa1SStsdP_gSgLdURP":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#centerOn"},"MXgamX7ZD7i97K11tdu_x":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#clone"},"jT674RD-vV74DcQcgVY16":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#constructor"},"AsT04YVafxzKJiRFrD9Ft":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#contains"},"i1Iat245egvk0aND0m-dC":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#copy"},"lh_NpeafiKD6x5VvDaHnc":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#distanceTo"},"KcQdrAtbbh1k7p_kDLwWH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#equals"},"X3VSNiqEqBC2UAFNB7lL_":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flicker"},"Pbb9gcHhrTTgjHX_qxKlH":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipX"},"Z5zph68fQAHjUBixDumpb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#flipY"},"m0id8muT3FvNCWaUsS8m3":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getAbsolutePosition"},"zwRsh1OVTBO0KZsTDD9Nh":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getBounds"},"QVrlzEWkxl0BiIvWJOE9i":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getCurrentAnimationFrame"},"_T-L7c-rZfKR5e4EQA0vq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getIndices"},"Xz9i1mG8gMVW3eWEy2m3T":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#getOpacity"},"bnh-OEhjzpyidg5ZPFy1-":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isConvex"},"t0nWdd67Aw8XBehp8Q98g":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isCurrentAnimation"},"a4WsEJ1nnePggEsPMo_lr":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFinite"},"103v0KjJ-vY6dutV1Kx1K":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#isFlickering"},"VijjB_dWGibNVpBaYJ61n":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#lookAt"},"OEON5d5d96EdBRUVl94br":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onCollision"},"yccPtc2kvJWLxC8wkXtdq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onDestroyEvent"},"gmfFvaFHHUmAIXlfaN6Bw":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#overlaps"},"u7pU7Y8G5X-s1WGw24tEf":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#postDraw"},"gSbcehOJgvFXS0t_6tWY6":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#preDraw"},"TMZd5uwj2_S03ypwdY-0m":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#recalc"},"DpIgtN3ZoOVoZ52Rg6bxJ":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#resize"},"cBeQOr54bJyIRvfJfWyvb":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#reverseAnimation"},"s3XBK--W8BO8ovhclttSt":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#rotate"},"ufb1c7fNIixpkTrCvQO-j":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scale"},"hxboYamqkNtjL-9PIbGBV":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#scaleV"},"BEpMJVWiqlDeHseZawxTa":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setAnimationFrame"},"q5R6BAWlmmQBtRcaYPzTM":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setCurrentAnimation"},"zzw38DCkalt6SFyIu8s0o":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setOpacity"},"cW7L3SLDQyNJM4-yB4PIA":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setRegion"},"EPoVHErp2-Rf64dwcjw5v":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setShape"},"eAcl4PSEOuyxkKOQNovT7":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#setVertices"},"xl6JI2OmJRY7ZwxYcNag8":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#shift"},"EALKegVvXHGbfz8h-_DOA":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#to2d"},"Zf3nJOTjkGDXVRz6dSBXq":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toIso"},"xW2S6dLJK7186fm7QPPNp":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#toPolygon"},"h8RP65GnxUHDNa44169CL":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#transform"},"DOLx5ISMF9u_u_1zGtxOs":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#translate"},"AYeg6rJToIfqXgk1FmC4p":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#union"},"WRLe0VQzaHXbuWmfaZorz":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#updateBounds"},"iGw5w3vxxlr6G6eJUd99o":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#draw"},"d5fxElKF7tR-6LOcMuliY":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#update"},"c0c-dF4te91lYj-8TaNWp":{"uri":"/melonJS/docs/melonjs/GUI_Object.html#onAnchorUpdate"},"0XlowB49NdLr8kpjlKPK9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html"},"Zy4jVyI4m2dw91YV5ttkW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alpha"},"f-aPSi_9PkK2k3Wd07M80":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#alwaysUpdate"},"2DDVLBdk0sEap5JGRZE-7":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ancestor"},"Pt0pd71dPzRHQzOP5gr84":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#anchorPoint"},"0lviRKORYv6XRAQ1aBQjH":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationpause"},"6aoHYQ3v4mIyZxlvh7fwP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#animationspeed"},"2b_ozj3S9Zgy6tZjiISxD":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#autoTransform"},"_hBNmLKJ4MIZodPHw59Hl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#blendMode"},"v6X6T9bztCbrup5KMewdo":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#body"},"45Db1Hnly1aUqDXJpfypx":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#bottom"},"9Bgf7fuJCeqGw0sFfj1rQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerX"},"hub73XIMOYjUpAT6620Ju":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerY"},"d5FftVfNlWvvuciiHwNDr":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#currentTransform"},"xev73nxlUr1mDuYMJfTw4":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#depth"},"elcZ7PGJn4GZVlKnuA0_t":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#floating"},"sO951wkTcb-YgDMTUAXcI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#GUID"},"yoJ6T1eURFX4gblVPQezI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#height"},"2ZedXYcVr2xI0YPP16W2j":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#inViewport"},"lpmyLvvJ4lylL9z0kLWxZ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isDirty"},"rraXTAIvSd0uaGlzd1Pff":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedX"},"-cYeRpAcTRDN4CmugSyTY":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlippedY"},"Q6nqbxUBi4PTJyuj1oJh5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFloating"},"gnGiXi-O90MCCbxiAlaWQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isKinematic"},"eS8MSRI8llAZmAf_sLsR1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isPersistent"},"7Gc69rPk-ruQ0swqNLudN":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#left"},"xsDaomQNxQoYNT86MA4CB":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#mask"},"YLqc9O685MGeEmc6cQyhJ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#name"},"PadePJ2AhYw5FX89ByXVw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#offset"},"p7guFjQohrCOCAY9fzgvi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onVisibilityChange"},"iBK9IzC9yn_EXKN3aM87O":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#points"},"HzIcwtubIfKnRiwaxLjFg":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#pos"},"kjmepNqbRg9XYf_aExpUK":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#ratio"},"YNe8u3FX8Df224mQiwGLw":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#repeat"},"CXPzTkC-1bqPajd1d7qWl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#right"},"QsDNJa2V8zZf9zzyJ0veW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shader"},"X-VY_qQ7w8GpmNTKYot1f":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#source"},"yAmT5StZmgl8kTmhPxIXq":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#tint"},"ZKetUYwf64CKbXpmiSPbW":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#top"},"ve5lj1mK09ML9E01EGNFC":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#type"},"hHQLez0IE24KMDE15M9F-":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateWhenPaused"},"IM_-sVvwp-H-zm4w-_H1_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#width"},"2AyIIf4e8Z55MJmkR1V_J":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#addAnimation"},"JIMz6ShG3PrePbST-w0OI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#angleTo"},"srS0N6jY_i8wZjS8lkC99":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#centerOn"},"LXZmsHUyJV4AltdGY3ugq":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#clone"},"rzxJegvqUxdWAeGd77reP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#constructor"},"2OJ5PAey9zwaFIITlH6Y8":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#contains"},"49UywE55AyYwDtll8zXDE":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#copy"},"F6oRN5ZbBqNtnge91Atsx":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#distanceTo"},"ptqZz8svS2OaPhCS3Daxr":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#equals"},"7IeaRglDQjbmA_hSV2172":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flicker"},"50HhNtDxCVI0-ZfPXPJvl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipX"},"rIAnEaT7DLXkMWDZNRCwT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#flipY"},"lePPCF-uIrpLgrjxPuqYh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getAbsolutePosition"},"qA_CXdwZNiTiLArxZjLJ1":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getBounds"},"TUIROJ8lIYrgs8aVrGlEE":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getCurrentAnimationFrame"},"wxcL9hJ2qGgGV655RbXLR":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getIndices"},"Ht2-lq1ebya-JkQgjqP1s":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#getOpacity"},"JTC9nKm6syD_oarfvbIqc":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isConvex"},"W3oy6YZB7pAx523zMvAm9":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isCurrentAnimation"},"TqmQ-qprTEWyTKHEqHnHE":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFinite"},"X0N-6z0BxcUzXnn4z95BN":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#isFlickering"},"uPjGkbKJYEVFuHD0caneQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#lookAt"},"8AYEO5CRaGuAmAtblOMIx":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onCollision"},"IYSyFiRfQABD-zxCBwg_I":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onDestroyEvent"},"9_JFr64BYFUsGprQRqnwt":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#overlaps"},"TKxvzCJRKsMjjrcS_ilGP":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#postDraw"},"oDC4_IIdh_rbZtREWKCEQ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#preDraw"},"kzgKheICpg_sp3soMBxsI":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#recalc"},"ZYPaV_lbQZ-sdOzBG-hQ2":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#resize"},"uuffW773pFAjzK1DJxmOJ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#reverseAnimation"},"Ucm6_b6b3Fz4rPrQIyghG":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#rotate"},"OKtx7sn-Ou147ADkPvxdi":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scale"},"zSO04KqRHtTUNb5aCVo4v":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#scaleV"},"zSWkmnJ83pT6X-Upk_HEh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setAnimationFrame"},"1p6USIShgsghKMuZ3vRYo":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setCurrentAnimation"},"UzUKOhWcBUOzqkjt0EQk_":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setOpacity"},"LE7NjyWw95AIgb_4uZNzL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setRegion"},"8RyJK9tH6UaQ95ILN2ZXT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setShape"},"vaT09Rw2-aAheaYfN9cxq":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#setVertices"},"sOPAH1kVXnNs4kyN2H5mp":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#shift"},"uwKvgvABCvgo6W7NtTWqJ":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#to2d"},"C5u4tuOUk5GCOur6L3WBh":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toIso"},"BLjGt-DMK-gzK4wmSq8-M":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#toPolygon"},"5l1kHIfLHZhetXV93PYPU":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#transform"},"ij3jJLPbUtV6gCz_4-QY5":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#translate"},"rsXr8i-XaK8gpJ-duttag":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#union"},"p8LPSvownMSHj22t1qfeL":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#updateBounds"},"nFclu8cSGSy8117inkyOl":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#draw"},"lY0pV77mhi6Nr-NqEex19":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#update"},"_CgaLm-AHW0oXN9969WhT":{"uri":"/melonJS/docs/melonjs/ImageLayer.html#onAnchorUpdate"},"ARMP2LgHlA3e4SEO2PKOx":{"uri":"/melonJS/docs/melonjs/Light2d.html"},"J26kCT9T6--VDbAZYeB03":{"uri":"/melonJS/docs/melonjs/Light2d.html#alpha"},"IxLIOdTfwyYat34DGUn9b":{"uri":"/melonJS/docs/melonjs/Light2d.html#alwaysUpdate"},"bg_nbtBlac9uyd9ZpyuVL":{"uri":"/melonJS/docs/melonjs/Light2d.html#ancestor"},"8dNsgnukFujTHk2Cd4-c_":{"uri":"/melonJS/docs/melonjs/Light2d.html#anchorPoint"},"Rc8PqKEeMb_6GtS6GbESQ":{"uri":"/melonJS/docs/melonjs/Light2d.html#autoTransform"},"9cUXUpi7uL-RfruVjNngm":{"uri":"/melonJS/docs/melonjs/Light2d.html#blendMode"},"DRqQIottaP4M8nSPlxH9J":{"uri":"/melonJS/docs/melonjs/Light2d.html#body"},"7_5H_DZPiC4w66SlaLNqp":{"uri":"/melonJS/docs/melonjs/Light2d.html#bottom"},"2jFsT1zrY3gxxfoMEbZtJ":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerX"},"W0ttr0aqSbSzJMUvBUy-U":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerY"},"ga4FUbY3pm6hdjkLSskKZ":{"uri":"/melonJS/docs/melonjs/Light2d.html#color"},"IyEDtuUitO6MR4xnNDN1L":{"uri":"/melonJS/docs/melonjs/Light2d.html#currentTransform"},"KYdEvpTyb-rYOe6nYPM_l":{"uri":"/melonJS/docs/melonjs/Light2d.html#depth"},"KXzS0RJUfQ5zioWPGvU3i":{"uri":"/melonJS/docs/melonjs/Light2d.html#floating"},"WZJoeqZIt5mz4x6BYpmqa":{"uri":"/melonJS/docs/melonjs/Light2d.html#GUID"},"ut06FQ2ewByXq6-hcMfI6":{"uri":"/melonJS/docs/melonjs/Light2d.html#height"},"SccuTn4BD_Thrn0bBRnB_":{"uri":"/melonJS/docs/melonjs/Light2d.html#intensity"},"rP0RfX0wZMztvB498Ds7G":{"uri":"/melonJS/docs/melonjs/Light2d.html#inViewport"},"YGPOHmCBsOaGs93silsrl":{"uri":"/melonJS/docs/melonjs/Light2d.html#isDirty"},"bhnfqBzPlM9BQjlPJoSqu":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedX"},"8SWE3moOqfIxFECFm3pyZ":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFlippedY"},"nj__k-Ot89o33lg7sC6pm":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFloating"},"426Reb9ntrji2EXYLI2__":{"uri":"/melonJS/docs/melonjs/Light2d.html#isKinematic"},"4T2Nf5s8ZMhZSgXLlAqfb":{"uri":"/melonJS/docs/melonjs/Light2d.html#isPersistent"},"c0we3pTAsAdMmzyxUMU_O":{"uri":"/melonJS/docs/melonjs/Light2d.html#left"},"MlhXGsf2WKQz27hYdrJie":{"uri":"/melonJS/docs/melonjs/Light2d.html#mask"},"UYRfX8f3u-FNSwdr6Oxov":{"uri":"/melonJS/docs/melonjs/Light2d.html#name"},"iBTQMaYpn7DjYtJebwmto":{"uri":"/melonJS/docs/melonjs/Light2d.html#onVisibilityChange"},"tghkB4KwXimeL9HHiG_Rv":{"uri":"/melonJS/docs/melonjs/Light2d.html#points"},"pzxQJNbPSNxXjRZZ8u52o":{"uri":"/melonJS/docs/melonjs/Light2d.html#pos"},"C20vwQmuKTFp5kLoJJnxb":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusX"},"2m97Z--CvWm5mrqIaLr_5":{"uri":"/melonJS/docs/melonjs/Light2d.html#radiusY"},"378XkozSh4QkEBPev-axW":{"uri":"/melonJS/docs/melonjs/Light2d.html#right"},"kIFYyi990gJy-vLp-N8f1":{"uri":"/melonJS/docs/melonjs/Light2d.html#shader"},"Y_9FLFBU7nrGf4GDmkXND":{"uri":"/melonJS/docs/melonjs/Light2d.html#tint"},"g5uEbTpbJRMy71Prb1J0d":{"uri":"/melonJS/docs/melonjs/Light2d.html#top"},"A_DkQ3SAG4fB-ArSPdXNT":{"uri":"/melonJS/docs/melonjs/Light2d.html#type"},"kl6DcsWs9JKrNNVum3xrC":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateWhenPaused"},"44Y0297wPHQT_w0Ujoj3G":{"uri":"/melonJS/docs/melonjs/Light2d.html#width"},"CgQnejoP6XulOf5sA9v8z":{"uri":"/melonJS/docs/melonjs/Light2d.html#angleTo"},"Nu3tnP_jMs8eGwphq_4hI":{"uri":"/melonJS/docs/melonjs/Light2d.html#centerOn"},"muJZTCov5uGT78VUrzXnQ":{"uri":"/melonJS/docs/melonjs/Light2d.html#clone"},"c9_L4EMToXRiBJscslblH":{"uri":"/melonJS/docs/melonjs/Light2d.html#constructor"},"71RqHJblMMpYTzqY16j7J":{"uri":"/melonJS/docs/melonjs/Light2d.html#contains"},"Awc5pwifpevN8K_M-938o":{"uri":"/melonJS/docs/melonjs/Light2d.html#copy"},"WDJHo-Q_59pfgfggfjl-T":{"uri":"/melonJS/docs/melonjs/Light2d.html#distanceTo"},"MMt8z9edK91tjVO2sVdmI":{"uri":"/melonJS/docs/melonjs/Light2d.html#equals"},"rQYoPqtmrXxGSzEBOwGfX":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipX"},"JNQGFLhPdpYj8YbWtRlks":{"uri":"/melonJS/docs/melonjs/Light2d.html#flipY"},"aKItrW5MBMUs6tiuf33n1":{"uri":"/melonJS/docs/melonjs/Light2d.html#getAbsolutePosition"},"H2gvxV5Le5A5qA8RU-hoL":{"uri":"/melonJS/docs/melonjs/Light2d.html#getBounds"},"MvMW5EPoa65StjOvdXlYV":{"uri":"/melonJS/docs/melonjs/Light2d.html#getIndices"},"RQRgoNOJFoMhYFMybeSCD":{"uri":"/melonJS/docs/melonjs/Light2d.html#getOpacity"},"yt1WO0sX345wTOVDaL4bO":{"uri":"/melonJS/docs/melonjs/Light2d.html#getVisibleArea"},"_XxjhEzNIV6bsMe9yheXH":{"uri":"/melonJS/docs/melonjs/Light2d.html#isConvex"},"rvyEGnNnWOiTo8C_WMK6g":{"uri":"/melonJS/docs/melonjs/Light2d.html#isFinite"},"-1XUFV0BhL6S5l4p8IEhF":{"uri":"/melonJS/docs/melonjs/Light2d.html#lookAt"},"21-LHetJz7TI4UgGOMZug":{"uri":"/melonJS/docs/melonjs/Light2d.html#onCollision"},"hoK_pnalJMCeetedd1mfV":{"uri":"/melonJS/docs/melonjs/Light2d.html#onDestroyEvent"},"HTzSYuE0sVeAFYzhNsUhm":{"uri":"/melonJS/docs/melonjs/Light2d.html#overlaps"},"hlecZKOMeif0BWfi54xyI":{"uri":"/melonJS/docs/melonjs/Light2d.html#postDraw"},"l88sVknRmEDT2r-yksbrH":{"uri":"/melonJS/docs/melonjs/Light2d.html#preDraw"},"hktOVPwfEYBGlL-jrNln1":{"uri":"/melonJS/docs/melonjs/Light2d.html#recalc"},"nccsis82qmFq1OOgUj2Gp":{"uri":"/melonJS/docs/melonjs/Light2d.html#resize"},"kqquBO5VRNhq9dyubJEbt":{"uri":"/melonJS/docs/melonjs/Light2d.html#rotate"},"TX4k7tP5UmwEU-Gx-CZyl":{"uri":"/melonJS/docs/melonjs/Light2d.html#scale"},"mMv0x_zx8J01K-sr8irBP":{"uri":"/melonJS/docs/melonjs/Light2d.html#scaleV"},"4vFTFOIEhbW2PugKfdBJw":{"uri":"/melonJS/docs/melonjs/Light2d.html#setOpacity"},"0HjncHXBLuBFreSEyC5OL":{"uri":"/melonJS/docs/melonjs/Light2d.html#setShape"},"Oojpl0dNXAmCZhF-8P5O1":{"uri":"/melonJS/docs/melonjs/Light2d.html#setVertices"},"yMOS_pQaZEErBnZExGig_":{"uri":"/melonJS/docs/melonjs/Light2d.html#shift"},"w5uZ372EkVX5B5TTo7xtN":{"uri":"/melonJS/docs/melonjs/Light2d.html#to2d"},"qY1i9oEdkqWsB_ar0-gJ0":{"uri":"/melonJS/docs/melonjs/Light2d.html#toIso"},"cHrBi91Lo2HQzi75adenE":{"uri":"/melonJS/docs/melonjs/Light2d.html#toPolygon"},"QCo5kg919X3dKl3SM_mwF":{"uri":"/melonJS/docs/melonjs/Light2d.html#transform"},"5vrm4Dp3b09frKYT3K4Sb":{"uri":"/melonJS/docs/melonjs/Light2d.html#translate"},"OSVj3sp4O354kkdblG0Y1":{"uri":"/melonJS/docs/melonjs/Light2d.html#union"},"AYWlICk9ajpOlgnO2kHDv":{"uri":"/melonJS/docs/melonjs/Light2d.html#update"},"l61zp8IUQ4l0tVum3sZYE":{"uri":"/melonJS/docs/melonjs/Light2d.html#updateBounds"},"i6N_5RBtolEy6IA37ZbUS":{"uri":"/melonJS/docs/melonjs/Light2d.html#draw"},"k7BZmJ6Z7hLHjiS2ePFPW":{"uri":"/melonJS/docs/melonjs/Light2d.html#onAnchorUpdate"},"z8_lVI1nyv87eL9qjXq4Q":{"uri":"/melonJS/docs/melonjs/Line.html"},"j0Dn50SOfBRiGd9uuIfx_":{"uri":"/melonJS/docs/melonjs/Line.html#points"},"zTepRfzUQ_R7CM9ykaGz-":{"uri":"/melonJS/docs/melonjs/Line.html#pos"},"lvQ7o1tGeraUCNVEWXu0c":{"uri":"/melonJS/docs/melonjs/Line.html#type"},"C75D0vh8qzIVjGRfBICxG":{"uri":"/melonJS/docs/melonjs/Line.html#clone"},"ny_Rqfdz_Wgq4DyKRBVlO":{"uri":"/melonJS/docs/melonjs/Line.html#constructor"},"AK0_jayIrJ9J6Xvrsf4X_":{"uri":"/melonJS/docs/melonjs/Line.html#contains"},"iBAg_0VZOiYPME_f9S3w2":{"uri":"/melonJS/docs/melonjs/Line.html#getBounds"},"ls5XBQdgRTdwaFJuteaNQ":{"uri":"/melonJS/docs/melonjs/Line.html#getIndices"},"LQbX8H8L1Doc0BaLRrsbq":{"uri":"/melonJS/docs/melonjs/Line.html#isConvex"},"7SSsGQ_Y_qmh_sSX7VIgL":{"uri":"/melonJS/docs/melonjs/Line.html#recalc"},"Ijt8fIkXgmcnasT1XtShZ":{"uri":"/melonJS/docs/melonjs/Line.html#rotate"},"swTjIXOCrM7x5m0n2Rs5I":{"uri":"/melonJS/docs/melonjs/Line.html#scale"},"h2t9i0zVagLiRp25gpt26":{"uri":"/melonJS/docs/melonjs/Line.html#scaleV"},"xfMOL3qWKE1JVjob5fgT7":{"uri":"/melonJS/docs/melonjs/Line.html#setShape"},"1CHJeVW-yqdJei6nhC5b-":{"uri":"/melonJS/docs/melonjs/Line.html#setVertices"},"HDBtriJXCnO6WWzLteXc0":{"uri":"/melonJS/docs/melonjs/Line.html#shift"},"y1Ck8YtAzCgYdfq6FsoUj":{"uri":"/melonJS/docs/melonjs/Line.html#to2d"},"6J2BXiQ5kqqM1OKEs0dYD":{"uri":"/melonJS/docs/melonjs/Line.html#toIso"},"rXs_-eVrAtF2j5sDM3r-6":{"uri":"/melonJS/docs/melonjs/Line.html#transform"},"658UYzkKoGC1pn7BFN1PG":{"uri":"/melonJS/docs/melonjs/Line.html#translate"},"qVktKwJZTcosJAi0osAsz":{"uri":"/melonJS/docs/melonjs/Line.html#updateBounds"},"AS7-D08p75TobmS_6uFa0":{"uri":"/melonJS/docs/melonjs/Matrix2d.html"},"l0HAEEcBkh4YgoG-zmue-":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#tx"},"DiE53XuFDot5QwEIzQJnT":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#ty"},"ZRe5HKMzKnTWMz4UdOOvU":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#apply"},"1I8PdXG5Abw0V_Sk5iYa2":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#applyInverse"},"leZ0RdIGwvC_MP7WNdwR8":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#clone"},"4ha6Zpm0XAJ1e8sNI0vY-":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#constructor"},"dI0XpRIOydX_FQsbQ43np":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#copy"},"7Z4iupNW3cDzF1WeVcGVs":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#equals"},"y4DYWX69zioscZmkeI49v":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#fromMat3d"},"1Oqc6Es-pxjcnXsuMw1Zv":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#identity"},"RNc_CAnnHoM23lBx6Zudu":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#invert"},"d_Sb0uRGtEts0a0ZkrMIf":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#isIdentity"},"HiiBHJ_8v8CBjeJLCHIsP":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#multiply"},"HYafB_sAamegOWNzyaGTU":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#rotate"},"qss7s_jb62wDTkqjKMjJQ":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scale"},"8DdTMBy2HM2SuPLbCs3Qq":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleV"},"nsoRCvnGLzMADstVzrlUp":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleX"},"PBwpXE-SpZfz6g42S4ZXH":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#scaleY"},"WQ5YlX47u0zGrnG3jDqzr":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#setTransform"},"sBRQ3XpXX-iNtoVcHENIF":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toArray"},"kYvd-j55U82Fn-uBaGbRn":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#toString"},"npWXh5winlQyF-JITqPhj":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transform"},"hF7hJWzz5w634hRs7aWhi":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#translate"},"iwI7MLxs1cV-ZebRqR54h":{"uri":"/melonJS/docs/melonjs/Matrix2d.html#transpose"},"7yuVZGiUZM-30O3BB7jLm":{"uri":"/melonJS/docs/melonjs/Matrix3d.html"},"mtV4w_F3jVwLdqoiIxH2m":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tx"},"s4tRlw1SYfu9AhOf4IWxq":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ty"},"lSSUxYYWkkd_hYY_6pIu3":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#tz"},"ZRtNe3bIyyy239z3_wrVh":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#apply"},"XypP_NXinkVF1snJQHTBt":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#applyInverse"},"sqkvlKapPrNOQ7EIntkJy":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#clone"},"bJ01AAYMotZIq5K22Jzic":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#constructor"},"Iv6A1xJS4d1EAwSvCQ9vJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#copy"},"HsKEELWDxbuAvCTVERzE6":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#equals"},"FY638xebHivAoSWZiUILY":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#fromMat2d"},"xTeVyvxj_kWzcAP2H_XHD":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#identity"},"wyZOtrHWaypleMXnVcU8r":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#invert"},"nTzQxIO2vXjA3nQziPjvH":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#isIdentity"},"qHvQMR-oZRnCPA5uCVauk":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#multiply"},"zXYNBgHMLJmjgwFBXj5ix":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#ortho"},"og2xw4TeHO56XnzXjLfDg":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#rotate"},"DnLRKRwtTI13eJhKi62o4":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scale"},"Kekwv_ndd8ZRDDEiDE99H":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleV"},"e55fmJuKCmNP882qA1HTJ":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleX"},"fbWn_1b2jE_ODce8HWcUu":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#scaleY"},"Q4J6Nz9Yc6V942Q1BD1zP":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#setTransform"},"8gLjydE-AGtqR6djHZJ5r":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toArray"},"o3mJjxBBnSoiMLYRW5hRb":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#toString"},"uGDt0WIoupAhQuqvIqOgW":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#translate"},"o63sXoGjnOHZ_KxQOWbhu":{"uri":"/melonJS/docs/melonjs/Matrix3d.html#transpose"},"oycO8_dHQkizxGV1odf2_":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html"},"0IuJk4DaL_3zteIFNpUbg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alpha"},"Q3my0ynJ6GbrWjO1X36WP":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#alwaysUpdate"},"wsFsoioCd3pzvnz1cvWXY":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#ancestor"},"k-msna4lomAbHS_QAhcVA":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#anchorPoint"},"3X3AYfJ69g8ULZnTf4QrO":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationpause"},"q5T5eolwu9Zdf6pAfCe5l":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#animationspeed"},"iEfVMfGGjmNKDAmFWG9T3":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#autoTransform"},"d9l-YmDzF9RhULOz0jTBl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#blendMode"},"91qGKnN7c8Ks7CJl-GXjM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#body"},"qj-uxRMUMQjt9mCOV4tyb":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#bottom"},"hIt20rsspsgeMvgmF_K5S":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerX"},"ItV-7zW93gDOy9Q7UO9hM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerY"},"6Vio5yKfoRZwfUDeS3kKl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#currentTransform"},"3A2ypI8Sr9UGcTiVeV1vY":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#depth"},"ludxDey2j52iWXUUxDG2F":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#floating"},"lQewfSElcztmMeFSwSv78":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#GUID"},"7fIEatnnNCLvJW4GMPrwJ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#height"},"rV_IA9g9oVOvqoeprS97d":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#inViewport"},"v0--KK-L5mq-LDACn-22x":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isDirty"},"0OF6SQw838lO-sVBaC-GY":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedX"},"bEeFJaMG3H3lx4GYOLwQL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlippedY"},"V2rkM8z7NzOg0fOUvRF8k":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFloating"},"p0ZycUPnIbtWr-ERqSSJ5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isKinematic"},"qLxKl8OMINxsl9CVCz3kQ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isPersistent"},"iTyl7N6VjZCpY5WtHvWgv":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#left"},"liRs2Kj-piKFNIXLCkWsJ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#mask"},"wpA8VxAPj4aek-_F8N4vG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#name"},"IZ1cX2KeczRcsS5-kkUZL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#offset"},"rtweqECV4pEnRk35Nhb9P":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onVisibilityChange"},"bvpY9LzZ-B3GBBLcHaZnW":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#points"},"x0gsCc-9-AnIp9nOpo7lO":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#pos"},"I3SRUrZfWY3YMkDOOFo0d":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#right"},"miaCh1Wtn9RV0bUHsF1R4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shader"},"E7Jfje9BCG-VEIyhvN2Yl":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#source"},"VbrUiWSeaE8z8dV8IAdq5":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#tint"},"nqNCXtOkqbIDasCzddnhw":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#top"},"kq_6Qy9GNfgwt5GLY2aT1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#type"},"lJ_JT1Js2lZef_3KRKxDi":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateWhenPaused"},"0DuQTaXp62LKUain3Sw6H":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#width"},"7jGC0A9fbEoxKhAMOXVgE":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#addAnimation"},"nJa-Hyhi-PhVmXjaF92JN":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#angleTo"},"H05Zpn6O0knsrws28lT6Q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#centerOn"},"cMhawr8B0_2ofSMpS5W0T":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#clone"},"igv4SWg_6WA1-vTr9kewD":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#constructor"},"EFRR7nfhXQokUw2T_t5Co":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#contains"},"9XyRBgZjBKBQxPBIyjFt7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#copy"},"ZI3BXQ6uiUs4ux658v8rg":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#distanceTo"},"YueaZMP91bERxxQMMDLKB":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#equals"},"jSiiNzvYWfIoi2gRz-DjC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flicker"},"u48fVBF3GiiOwShZN7OWG":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipX"},"WJfrt3zjpEqD2GU5KE9bi":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#flipY"},"UQFLBeRZ4sUAdIs4Z8cwQ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getAbsolutePosition"},"ucwUJF0yxTunmF2XS3xcI":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getBounds"},"doBAQ7Z2O89Vuo9eARvS7":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getCurrentAnimationFrame"},"FxwSMhmMZeg0xzkQGbpvp":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getIndices"},"dhJpxXhraJwMmBii26yDO":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#getOpacity"},"HPKMM2GopA9fKKSYb61ez":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isConvex"},"t9k47iqRx_KgLYoDOd0CL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isCurrentAnimation"},"zzyxaN6bZQhaANn5t6lZr":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFinite"},"h_H_jZRFsfmkKUOtRP6El":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#isFlickering"},"hON55HFYihD9sSLA1dPhs":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#lookAt"},"uuWcUIrB9_Z9kp9ZxQM0h":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onCollision"},"l3-JR7Q4_NKJGEdtxJP1Q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onDestroyEvent"},"bkuP-vrSxkgdx_XoKlcSH":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#overlaps"},"UMZ7pp8kAkx10FQkW0-tY":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#postDraw"},"8VJu28jtjH1B2w1RSJIMM":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#preDraw"},"A445fZUubcJBX0CSa0ZIQ":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#recalc"},"krou4UCD_4-p-TVWp_8MC":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#resize"},"A0RRzDXkRI1zDhdjC9bq4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#reverseAnimation"},"XqnVsi8wOw1Ob9akHu9em":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#rotate"},"yc8IzWu00_Of_i23w7q_o":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scale"},"kXvFfLvi9z_Fir5SJNIX1":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#scaleV"},"djEQWvCbpFJTWaoBJ7-R2":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setAnimationFrame"},"_5E3kQUoQHBJ_fI4CStmu":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setCurrentAnimation"},"kB7LFaA70KweLIpGd-FVq":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setOpacity"},"S_vOD9mxl0YIpYhXDVTfR":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setRegion"},"bhIkxXz413Ifw_isEdaBL":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setShape"},"fn_hJSNFLMraInELc5dLT":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#setVertices"},"oyHm8Q0Bkd-Ffbkyb6V5k":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#shift"},"iKn7GOapdDz8ml1tShYvm":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#to2d"},"1IA9_H8lWuv2S1R9Cukzk":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toIso"},"WFKHggwb8eHmYXWZa-Erm":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#toPolygon"},"6oOKWRqc2HlmTR5riLrxS":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#transform"},"ecFtW7Xtz5hej_0d7vRA0":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#translate"},"gwtqa9oL-yLXKHWYn7mpO":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#union"},"ie6OKc4tM1FU93gfvp7id":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#updateBounds"},"Y4BAquYKvQjhpaocn-3P4":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#draw"},"vD_q1uxRUGyl19L4K-s3d":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#update"},"iwVqEB4PmNK67ykzMTm6Q":{"uri":"/melonJS/docs/melonjs/NineSliceSprite.html#onAnchorUpdate"},"1I9LlgLo-E3aiBflJv3rp":{"uri":"/melonJS/docs/melonjs/ObjectPool.html"},"IuuM4mjL69bttQb97TF5W":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#exists"},"h9D_R7Z4xdy109mx3gIqd":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#getInstanceCount"},"J053QDPVB8zah87sB8JUG":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#poolable"},"_0ah00vtkFaex-PFtOkFZ":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#pull"},"V6xGy7CI2lc7X4ijYEWPQ":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#purge"},"zDu9Sh8XD8RXx83h8hRLb":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#push"},"4pmB48NbeZmJn20hX_3Wc":{"uri":"/melonJS/docs/melonjs/ObjectPool.html#register"},"BHHcq2W7zLe4UMR87CNTP":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html"},"6dxaPYjUmqIuOD1-8l-K9":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#x"},"pSlUI_JhPTcWZ4nBeohBG":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#y"},"Kr27mgv5-UVFv2fOT0F0K":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#abs"},"ok7BxvxcoGv_ORvmq5KY4":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#add"},"j4TVzwB8zeJa9ac1IdBrf":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#angle"},"mkaHmHqn8vaQO8eT5IE-l":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceil"},"agWzuW4NaPPEYzifBkTI5":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#ceilSelf"},"G3oL58FZ0sCRUOLD-axyM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clamp"},"vNud-OTXUYJKl7EYtlpVs":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clampSelf"},"93k8KXjLiljD4VTUk4cT9":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#clone"},"IsCwkFHfthW9MCYTekVZ-":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#constructor"},"e53A93b05Iwn-mL4aArnL":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#copy"},"WQZ130ggf_PVruQWMZlZg":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#cross"},"qpOeScSUtzspS15wy7-IX":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#distance"},"7EdGY65sWBnfbib6YsWYD":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#div"},"ZdhQSmq7J-0Q8rL8fthHx":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#dot"},"MSXhOZqIWqa0OTsZlK0v9":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#equals"},"-nyC-BbqAMJL5V9H_Jitu":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floor"},"mYTyPnmx52DlWFETkcp0U":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#floorSelf"},"-EzIIdkXWFR9BRk10voS7":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length"},"SJGSWDrsKCclCzxUS3PC9":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#length2"},"I42NGklMP2nbZ-U5nqbM1":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#lerp"},"bIpwjlH72dkDHi2N5utVB":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#maxV"},"D36bFIsY_ouM1JIkhZ7_c":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#minV"},"QLUPSEmpXcrctqhv7tAVH":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#moveTowards"},"s-6_PUVYWOgfadCxv-6Z_":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negate"},"Pdap4VgAF_2o6R2TND-BS":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#negateSelf"},"ZMWB5hp63gPgLXprX1g-X":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#normalize"},"q8K_6ULrpf5HS7yN7z7eL":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#perp"},"XhrWnVhUEHRyT7wLz1Ir6":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#project"},"0XS3E-hoiSvuaBhQfrZmp":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#projectN"},"IYuiBrCgdr6_8q-y6_v4i":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#rotate"},"4qFzz1uE18xnEmbn4lO1G":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scale"},"veJT5rNeQCUMv403h9ogR":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#scaleV"},"KnyNwDnJIwQQIGR3XVi6s":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#set"},"GqS7ieng_WyihwDvo69BO":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setCallback"},"Zt_IjN8MxqrIu7QVXjKhg":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setMuted"},"tp52E4g-I6vAbRPgV7WOV":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setV"},"PmJvgNatWTbBFGl-21MzQ":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#setZero"},"vxTzRnyHIJatExf2QznFM":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#sub"},"z1pwUBcV_M9ZJ7GOkeDFc":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#to2d"},"csIYZevE-gRU6-IUVB2VA":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toIso"},"6zGDmfXAP8gjHnZa1PPot":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toString"},"sfKmubJkZAw3ASpAEhFuG":{"uri":"/melonJS/docs/melonjs/ObservableVector2d.html#toVector2d"},"qgAnP8kr-jK63CBzBKSg2":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html"},"oRpcuPZNopnCQHuZxIXDQ":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#x"},"g2BmVTtQ0D-QN6j8jzllo":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#y"},"266E4gGUWUhvGmlA6thUs":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#z"},"6NOBcHLUvewdKtN71T15Q":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#abs"},"toB5eYMNJmz-NTX5cZANv":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#add"},"zOMQGkMnVUm67MVbtKNGg":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#angle"},"5rMeY2ZXAgRYLPJFGv392":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceil"},"4cpPYiwI10SlYPMwli8qt":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#ceilSelf"},"KTX9rTkxczv0A0PWHo_bK":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clamp"},"jEPWA8KvDIzY4UzwlhbAE":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clampSelf"},"mr-_MSdMqh1egoo-g6cy3":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#clone"},"qAHgKDOQzrSuXyzG-y0YN":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#constructor"},"QC04SVuUdVSc-7dr9Gb3T":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#copy"},"_k7Fle0KjUQ1RQY0Npjel":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#cross"},"I99a1sNA-2d1_iPg_xFpt":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#distance"},"39DNp8o9wng5ZESzqPlkf":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#div"},"K4cg3mR8fvkimqyj0ScID":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#dot"},"hHyuJDM9bxEHIDK6yFhDs":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#equals"},"z1ot19ZHZFl4h_3bqjqqd":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floor"},"l4O9TjedNiFHh9KkDWdO1":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#floorSelf"},"BfpKzfD_ye7lKDHC2VSWv":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length"},"ByS-ZyIOX8T8TbPK5D54m":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#length2"},"QQ6CzsRF4XXHFXfZSFNeV":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#lerp"},"677hVS5obOjdiTW-oCcYv":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#maxV"},"HUyhQKlKENwDGHht4X5wu":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#minV"},"mZASDROn2ZIbsB4Eek2TU":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#moveTowards"},"qUjCkTIIeTZewv9pT54xN":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negate"},"QBFJJN3l5AkUO4-KAHrwH":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#negateSelf"},"pV3wIXpUnM-q4fbvOvUuI":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#normalize"},"V1zWVrI17PsI0HH8sb1rC":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#perp"},"THuGcQO-aS1oUrtsiRu_m":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#project"},"xcpu4hyVm1NrJpaODacup":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#projectN"},"0LoZbQGcwzgn-xUXykiWW":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#rotate"},"m9-RdrSqT8D4IHKATkMUa":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scale"},"B5UkSTnWy9lhRzOdNIZzl":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#scaleV"},"WHeJs3pHYISE6ybwrPcHn":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#set"},"9QBZIcblpWTRiw1-vVXZE":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setCallback"},"szhz3gjcsO3kSj1WQm8B2":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setMuted"},"2-jHC1JTxPgZMMdccqPfn":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setV"},"D5c-F7SCV0aF30WWdRu8A":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#setZero"},"Oa4vnq_fnZsaQEXNB0cqd":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#sub"},"zJvMLrXvbfK4I8-rmTann":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#to2d"},"M90su33PtgVi6C5sBHgmx":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toIso"},"Sw7HOpPHw_MVEdtkukEX6":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toString"},"5ZZ9xV7BrX5YI7At8V72W":{"uri":"/melonJS/docs/melonjs/ObservableVector3d.html#toVector3d"},"Z1k1rsOJdtyOXuvW1xvgL":{"uri":"/melonJS/docs/melonjs/Particle.html"},"-Cxgd6jJtw5Hki7B9r5lF":{"uri":"/melonJS/docs/melonjs/Particle.html#alpha"},"U8iKU8UxjAiuN7muX1w9q":{"uri":"/melonJS/docs/melonjs/Particle.html#alwaysUpdate"},"mHLuCsPJIcyCm82Dp3Yr2":{"uri":"/melonJS/docs/melonjs/Particle.html#ancestor"},"HQSgIUOzCZQ9jr0aqBMHu":{"uri":"/melonJS/docs/melonjs/Particle.html#anchorPoint"},"u4itHl0Qck7LwhVhHDpQ1":{"uri":"/melonJS/docs/melonjs/Particle.html#autoTransform"},"8q4Gk_cktcqswbVka8UmU":{"uri":"/melonJS/docs/melonjs/Particle.html#blendMode"},"-MYh0w6FnXxHzooVaYsnL":{"uri":"/melonJS/docs/melonjs/Particle.html#body"},"b4ztVNe3UDhrv-NznC7vR":{"uri":"/melonJS/docs/melonjs/Particle.html#bottom"},"6I_XsG_xO_f9-9xdQxFjJ":{"uri":"/melonJS/docs/melonjs/Particle.html#centerX"},"8p9AP4zRq-nky5GCe6a0E":{"uri":"/melonJS/docs/melonjs/Particle.html#centerY"},"Co9YUFcT7hSFf-8SRsAFW":{"uri":"/melonJS/docs/melonjs/Particle.html#currentTransform"},"eY8q5RG8RtUsYPNdQyJ67":{"uri":"/melonJS/docs/melonjs/Particle.html#depth"},"m3bp7K095gPKWWcvqP64F":{"uri":"/melonJS/docs/melonjs/Particle.html#floating"},"--yOSWxd1gkIfdCHeFgHg":{"uri":"/melonJS/docs/melonjs/Particle.html#GUID"},"7i8zZG-CH0qp4bxs4grgX":{"uri":"/melonJS/docs/melonjs/Particle.html#height"},"Eh54ILGJKOpcUMF7TF3Y_":{"uri":"/melonJS/docs/melonjs/Particle.html#inViewport"},"WMXO239DQbSAGbz0ePoFU":{"uri":"/melonJS/docs/melonjs/Particle.html#isDirty"},"FS13eBaHFiaGiTeZ3hZ1T":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedX"},"jykZjbUaFX8q_KpaIhbId":{"uri":"/melonJS/docs/melonjs/Particle.html#isFlippedY"},"d5yQFugpCGsTvI3DMvWEG":{"uri":"/melonJS/docs/melonjs/Particle.html#isFloating"},"gfh_0Yi50U8jiLZQSpbW-":{"uri":"/melonJS/docs/melonjs/Particle.html#isKinematic"},"VX0TPOYRF5tR-twT7yL8J":{"uri":"/melonJS/docs/melonjs/Particle.html#isPersistent"},"Q3FhOK5CvuW2cymeFJAu4":{"uri":"/melonJS/docs/melonjs/Particle.html#left"},"QNaBXxzKIFKIaTzUnydft":{"uri":"/melonJS/docs/melonjs/Particle.html#mask"},"3z1jM9rgZubCxLFSGSmUv":{"uri":"/melonJS/docs/melonjs/Particle.html#name"},"M5C9dIbZFsKulpu82UOG1":{"uri":"/melonJS/docs/melonjs/Particle.html#onVisibilityChange"},"PGpzWuMLAKOJvAcbAYbmN":{"uri":"/melonJS/docs/melonjs/Particle.html#points"},"y81cPHxURdFq64kmEojVe":{"uri":"/melonJS/docs/melonjs/Particle.html#pos"},"SiTzF0Mn9_9VGFcU9b_kU":{"uri":"/melonJS/docs/melonjs/Particle.html#right"},"vHSpyAqr_XcfUx1-KBnwV":{"uri":"/melonJS/docs/melonjs/Particle.html#shader"},"pP7Ug7Y_qspfllcf_9NhE":{"uri":"/melonJS/docs/melonjs/Particle.html#tint"},"rW1Ve1OyZD17ARSxrHPk4":{"uri":"/melonJS/docs/melonjs/Particle.html#top"},"TgGAXjf0yRy76x8FWwG95":{"uri":"/melonJS/docs/melonjs/Particle.html#type"},"TrcUp_8uDeRB1tQ2LC7Qh":{"uri":"/melonJS/docs/melonjs/Particle.html#updateWhenPaused"},"wdVpDUiah-f5T2aQb1Gel":{"uri":"/melonJS/docs/melonjs/Particle.html#width"},"9O5uOYfu2fUK2Z7Cn7VoH":{"uri":"/melonJS/docs/melonjs/Particle.html#angleTo"},"4tJiAIH2wdxrYL3on3r1E":{"uri":"/melonJS/docs/melonjs/Particle.html#centerOn"},"mWPgC_eNhqYpvFOgmy8Hb":{"uri":"/melonJS/docs/melonjs/Particle.html#clone"},"8op9Xs6UxnrpiVfdV-QpW":{"uri":"/melonJS/docs/melonjs/Particle.html#constructor"},"_CEUHo2EW7PBI7uvAzb-S":{"uri":"/melonJS/docs/melonjs/Particle.html#contains"},"xENIOX6ophg4kF8YS79WC":{"uri":"/melonJS/docs/melonjs/Particle.html#copy"},"46iM5OZZCItYxaVWH8peO":{"uri":"/melonJS/docs/melonjs/Particle.html#distanceTo"},"4F4uMGO4XQXMdUKHP_M7L":{"uri":"/melonJS/docs/melonjs/Particle.html#draw"},"HZZIC_rPeC_X650y9pMY5":{"uri":"/melonJS/docs/melonjs/Particle.html#equals"},"j1loYOfiGtnN3fuVNhfyK":{"uri":"/melonJS/docs/melonjs/Particle.html#flipX"},"z1UDgymUi9dTSEGgpIn6I":{"uri":"/melonJS/docs/melonjs/Particle.html#flipY"},"_WajjTXBhDw7QTCpm18tT":{"uri":"/melonJS/docs/melonjs/Particle.html#getAbsolutePosition"},"gu6KiMOpu2n8uFjouJXZ_":{"uri":"/melonJS/docs/melonjs/Particle.html#getBounds"},"Uk1i_S2xUCtehQfoiCePK":{"uri":"/melonJS/docs/melonjs/Particle.html#getIndices"},"W05esiIwZpjoxSkWb3HGO":{"uri":"/melonJS/docs/melonjs/Particle.html#getOpacity"},"qlHGeHkL-zq2FpcDmfdMP":{"uri":"/melonJS/docs/melonjs/Particle.html#isConvex"},"DKs-gkLX3ddlETkMv-ugy":{"uri":"/melonJS/docs/melonjs/Particle.html#isFinite"},"t-oxnij_cESq9MVZymnq9":{"uri":"/melonJS/docs/melonjs/Particle.html#lookAt"},"HCRwzlz21ayaTEtxghlEC":{"uri":"/melonJS/docs/melonjs/Particle.html#onCollision"},"bRSG-lgdfuehWzQxvTJ2W":{"uri":"/melonJS/docs/melonjs/Particle.html#onDestroyEvent"},"-KSpnyPVg3OHfpxHaqzrY":{"uri":"/melonJS/docs/melonjs/Particle.html#overlaps"},"eBCplg5-QDmtMTfVn5qPf":{"uri":"/melonJS/docs/melonjs/Particle.html#postDraw"},"zsDnXZtaOPhoof0PXo_u8":{"uri":"/melonJS/docs/melonjs/Particle.html#preDraw"},"Ec32fX0m5ltQ81R4CWTKL":{"uri":"/melonJS/docs/melonjs/Particle.html#recalc"},"QB9JXC_3Q7ds9xkRtwXUq":{"uri":"/melonJS/docs/melonjs/Particle.html#resize"},"9gkf0UzxuJqQkDQEDqAFt":{"uri":"/melonJS/docs/melonjs/Particle.html#rotate"},"TbfRG9faS77lQ6-w_IMcX":{"uri":"/melonJS/docs/melonjs/Particle.html#scale"},"cIgLUQfOPHNC9Qpci6Pyp":{"uri":"/melonJS/docs/melonjs/Particle.html#scaleV"},"sEMGoOmsYnSru_4j1dG8d":{"uri":"/melonJS/docs/melonjs/Particle.html#setOpacity"},"u7Z6K1m8ULxn4-YUF1rd0":{"uri":"/melonJS/docs/melonjs/Particle.html#setShape"},"NPFpmgju0H5Nrec6cFRY2":{"uri":"/melonJS/docs/melonjs/Particle.html#setVertices"},"i_y3HACGsSxXO2gj7pSj1":{"uri":"/melonJS/docs/melonjs/Particle.html#shift"},"GXEhEYIGHY8GkpW0FX1XT":{"uri":"/melonJS/docs/melonjs/Particle.html#to2d"},"In2pAWxrdcUcvLwWZyuvl":{"uri":"/melonJS/docs/melonjs/Particle.html#toIso"},"o8XEN9I_rRA3IdHCgVzhV":{"uri":"/melonJS/docs/melonjs/Particle.html#toPolygon"},"iZxrc9JGT0spSVdosxN_L":{"uri":"/melonJS/docs/melonjs/Particle.html#transform"},"MF2sUdZXL8ROq_q9-4ubN":{"uri":"/melonJS/docs/melonjs/Particle.html#translate"},"x_REpDKg7UH7572iKMTBN":{"uri":"/melonJS/docs/melonjs/Particle.html#union"},"bL7QLAig-018cLCw-iNnN":{"uri":"/melonJS/docs/melonjs/Particle.html#update"},"hTKalY_cEAUyTFphHPilx":{"uri":"/melonJS/docs/melonjs/Particle.html#updateBounds"},"BpxXM9xwCTGq03Tji09gk":{"uri":"/melonJS/docs/melonjs/Particle.html#onAnchorUpdate"},"0pWnvXnrPE0OVG8jGVqCo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html"},"FRDuAx5kgrgCvOx8syIZ2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alpha"},"6UqFopWMT-v19Io2VWkR2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#alwaysUpdate"},"wbcbGssxfUJZgHxCCq_Xe":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#ancestor"},"BPtYXaTdOChq95Txtqj-2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#anchorPoint"},"dl6j40hyMPnHvNmGoIaIl":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoDepth"},"ZXOJf8_DhJih5qmlTadb8":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoSort"},"49U6RJ06c8DE4gVUa2x2B":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#autoTransform"},"hI8LZHMKuP0QDkyBBzx2j":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#backgroundColor"},"rI6TqrStTxt-70-kHQaFm":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#blendMode"},"OBms-s1xyO-I9kj5LYqTB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#body"},"VJc-diCIL118FT89FsHuk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#bottom"},"jNCsogODbtdaKd6mnxc-2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerX"},"lXZT1BLDvXksRg58_mm4O":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerY"},"ULgmPHxMC4YPsrYLfSXUX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clipping"},"ebwqw1T6RC6gXPU2Kn1QS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#currentTransform"},"z-Jsyqk4UV6y-7TXyEtMM":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#depth"},"xhJSEdkGUYWPUDa7XF10l":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#enableChildBoundsUpdate"},"-_aHtrMEElpLRzJy_Is--":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#floating"},"qNOwR9iJZype3J0zWiZK-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#GUID"},"aiJv3WyIfAZ9JkVjlLCxv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#height"},"17b4lYKj7rf3cCYKlPhPo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#inViewport"},"BsOtnzATSaergsbdFzFzA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isDirty"},"FbqCfcDksO_itteEZDTUN":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedX"},"lkA8oVtkEar4aaGKxzbu0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFlippedY"},"JybRnhSqiJ2ckmLf_AzmA":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFloating"},"gygK27m-lZdW9SMdCQSJP":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isKinematic"},"lFYhWMg-EhIKPOY4n-f0K":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isPersistent"},"g7h3BCmZFwqIAAJlbMxYL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#left"},"NxmFAnSrZQ4Lfb00g4Ti0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#mask"},"T69GFcdVYhTK7EmKUB7dK":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#name"},"lXciJIj6ulWnwfkedQ46-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onVisibilityChange"},"UpdsoSQQKzsc-HHu2FLHO":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#points"},"fEFSM5X_zKFe0rBaoDmDV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#pos"},"aTLKOltxfv0xknu9gUSGp":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#right"},"fZ35es9vrp0ZdabCnOfhx":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#root"},"WvG7-K9x2e0XrKnbUOo-2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#settings"},"pRcTjxb_t-WfOigWhweF0":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shader"},"fRhgFVyBEH4elB1lX43ay":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sortOn"},"DffxrKH9iddmr1IeBJEGg":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#tint"},"avO4d16KlpDCSrVhgdDpy":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#top"},"9dUpIduxTkfhjno07pvog":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#type"},"rooCjS-VojZ4-MYWqcFd2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateWhenPaused"},"g5ANuMtPcN2WZQXAkobRh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#width"},"M4BeZcyVbTp2lqvK7p4iw":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChild"},"rJ7C1EY3PN7rxl0LXcPQe":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#addChildAt"},"fnvWaB9Brt0espUZNv9pJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#angleTo"},"K8Fa7nUb6_lILWjracvuE":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#burstParticles"},"iJl0ba0JfeeLJl3KzK3ki":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#centerOn"},"fA5sxOYHHonoAnzr0vUYL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#clone"},"aE_oB68yqQQrWmoHRYyIc":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#constructor"},"d9wnA2Q9dqXgMkL3jnsVL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#contains"},"ZCQI-f2sqDGL6_MFtvjt_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#copy"},"voYSLKHwP3D6SNBVwSaUt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#distanceTo"},"xsuKf_y8o4UStZkPfMeii":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#equals"},"b_Q1Ym6EfO9Nf35aQ34W9":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipX"},"QEtP7xW1dv8VV8cEbVB0J":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#flipY"},"AnCyT6WOF4u6gJ7OF37zM":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#forEach"},"iI-CuDP6rQinOSKtHNn-6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getAbsolutePosition"},"b1eJnUXhYUVizy8M4qp-w":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getBounds"},"t9jyaqXG9Vg9AAPEO8U0b":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildAt"},"WcwWl-zlsyF6jp8VUEik_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByGUID"},"diTM3WWy3I2poekqYU4LL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByName"},"UX_c3l7es9KaK1kL903Qr":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByProp"},"SbMF0EmuqBEZpmqDFqZB_":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildByType"},"mdWksC52hgzrnu5UyFcqp":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildIndex"},"tglhhrqYfrenhgSw7vhYv":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getChildren"},"sO5uN1H0mCToRlnsvUbNX":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getIndices"},"08DfGPmRH7yVNgnnohKna":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getNextChild"},"aXL-nydM3SR-br6vx96A1":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getOpacity"},"3azQ42ZmnBLUb_I98wroI":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointX"},"HX4eQwMdxR5fXRBo6R5ks":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRandomPointY"},"EMC9OI-auejwZ4G-AoeFo":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#getRootAncestor"},"bgLTO5AXcOgaCm3GEh4qZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#hasChild"},"KJY2TRd14hKDov6CymcFW":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isAttachedToRoot"},"CsLrPXKRKDEyX7NzAgtHx":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isConvex"},"6cLrPSzAbOBN0HIx0MqmF":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isFinite"},"1And69aIld6_zqU7r6X77":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#isRunning"},"pkrkBMqb3Jeig5QNXgyId":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#lookAt"},"SF-WtunrT2jnKTk1BzL3L":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveDown"},"HspQO52hYEIkiLaw60pL7":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToBottom"},"DeLUy9wrw9105Ipc8x8O4":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveToTop"},"kPpyv2Ra9Y2y7BghPdXpt":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#moveUp"},"xSNW72WKulfRDlFkkYQ4C":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onChildChange"},"DkSqRDM3oTvoTUawL9wZ6":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onCollision"},"jHsC42HzbR78j5NtPVvoW":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onDestroyEvent"},"qQwAPW9EPUbXTLyCrE3Ve":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#overlaps"},"QJXjTYpQi--fmvNai84hs":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#postDraw"},"hBxEsl3nuBMYd0r7izs87":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#preDraw"},"RIOb1FJMLVATjxU-vCXpE":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#recalc"},"hGu55GXmKz2GhfIOWdGBV":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChild"},"vNmvMFzLUt1qUwP4leyIq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#removeChildNow"},"Lb_fHWHZHzj1b7VgMATa7":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#reset"},"5DDD6cOYRCunK5P4GOYWx":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#resize"},"ivmhWh3nDyzup7LvM9oZ-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#rotate"},"NHjnmzbzNU9hzc9VJL-K2":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scale"},"gU_98nohnfwtlCLflxhQR":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#scaleV"},"-MwqxNRmt_KmdifnFg6nh":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setChildsProperty"},"GB9fBuy-dIWqP_aAlocCB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setOpacity"},"dRBVXaIRByoe05xMHN47i":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setShape"},"yfHGbmcUtaz7K8TOqnpGZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#setVertices"},"M3A-cjcmAbcrroKuPtSsk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#shift"},"USMlAxA224njc6k5qQFcZ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#sort"},"P3wcWkErE2slibygHXvqS":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#stopStream"},"nGn_-Lpxt9D2peuZ-KSqq":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#streamParticles"},"-bvPdG2pXiFOFUn0mBCpc":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#swapChildren"},"GA5PL0P9MklnmJbyYtFwL":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#to2d"},"8_IbsUuejoT-OUu0xj5dk":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toIso"},"Xib_KHQ8Vsa1pwGgM4asG":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#toPolygon"},"xCibpVR5BLT4n8_NyttyK":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#transform"},"PVnNlh8K7sFdhz5-x4Ry-":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#translate"},"nWHslSA95mRso81S3rQWT":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#union"},"YLi65WTfH1Y-_P-WmFEmd":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#updateBounds"},"XJujI6ToKnzex9VX4SdeJ":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#draw"},"srdeDWEXJQo4Jsb-eOBVB":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#update"},"JV-n7Og1GOw4EuM2KZx0b":{"uri":"/melonJS/docs/melonjs/ParticleEmitter.html#onAnchorUpdate"},"qf6zsuWVcrx88Meeb7CS2":{"uri":"/melonJS/docs/melonjs/Path2D.html"},"pc6wW2Dcd1UHjb19qPTZb":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcResolution"},"FzGN4K5_C-gncXuFXvj4k":{"uri":"/melonJS/docs/melonjs/Path2D.html#points"},"87X86bcHIWDrqFX8p8cAF":{"uri":"/melonJS/docs/melonjs/Path2D.html#arc"},"kYPeAeb9ysqmS9mrVOgKy":{"uri":"/melonJS/docs/melonjs/Path2D.html#arcTo"},"LLDEp_FmDaXsNYOXwK_W6":{"uri":"/melonJS/docs/melonjs/Path2D.html#beginPath"},"IXzqsXSkTyHGV6xGLaVK7":{"uri":"/melonJS/docs/melonjs/Path2D.html#closePath"},"XQNKXhDKHQIxuxjHUh0fD":{"uri":"/melonJS/docs/melonjs/Path2D.html#ellipse"},"MTDM_R0YdC_lCN6P74yu9":{"uri":"/melonJS/docs/melonjs/Path2D.html#lineTo"},"ap68SpZRqo3uyLV4YAcCY":{"uri":"/melonJS/docs/melonjs/Path2D.html#moveTo"},"ZCLFcXvF_nqvzdKuljKEa":{"uri":"/melonJS/docs/melonjs/Path2D.html#rect"},"BXFs8tfCWE1Gl4p_qIGe4":{"uri":"/melonJS/docs/melonjs/Path2D.html#roundRect"},"y_0eLazOx5WaR7dUmifmF":{"uri":"/melonJS/docs/melonjs/Path2D.html#triangulatePath"},"7btJXjjclbWoBjW45rvOe":{"uri":"/melonJS/docs/melonjs/Point.html"},"jp-ykyKN4rCSQ0X7_OlSn":{"uri":"/melonJS/docs/melonjs/Point.html#type"},"0WUsN9qVrovm1tTzqw1pD":{"uri":"/melonJS/docs/melonjs/Point.html#x"},"OIwjlzUG8a7DYlVa-CX02":{"uri":"/melonJS/docs/melonjs/Point.html#y"},"o6v4ez9gcLv6bSzGeyliQ":{"uri":"/melonJS/docs/melonjs/Point.html#clone"},"GKHtfSVtKAEecoIkusHnU":{"uri":"/melonJS/docs/melonjs/Point.html#equals"},"MMF_yW8npU-PegerpaC4W":{"uri":"/melonJS/docs/melonjs/Point.html#set"},"kkbS-D_l8mG33vPo64n8x":{"uri":"/melonJS/docs/melonjs/Pointer.html"},"GrmkMa1Lg9ZbAOXhPFpXl":{"uri":"/melonJS/docs/melonjs/Pointer.html#bottom"},"pie-4pPbEBNX9u9A2_yN2":{"uri":"/melonJS/docs/melonjs/Pointer.html#button"},"Diu57kXdfmDqoKY00pr5D":{"uri":"/melonJS/docs/melonjs/Pointer.html#center"},"-UAlhurrZAOKTN01Arfni":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerX"},"J5SCAty4qWr6FlEa5g6nB":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerY"},"Jq8POD10hDD2eRP6bHclI":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientX"},"0DIKbvVDywFjsIeQPs0nD":{"uri":"/melonJS/docs/melonjs/Pointer.html#clientY"},"px95cs3TDmB0gGpoR2Ro6":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaMode"},"bEPm-2DJAdH62oucDd1DQ":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaX"},"NV_MsyI6FqD2CVGORaK4Y":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaY"},"Z2hsbaYcXIEpChFuEfCK7":{"uri":"/melonJS/docs/melonjs/Pointer.html#deltaZ"},"kH1jwVd1PR0meZKUUUN-x":{"uri":"/melonJS/docs/melonjs/Pointer.html#event"},"6rpu2K_nEQOl7aP41KqBA":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalX"},"ZZQb2da7X-oQN19EoYMYl":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameLocalY"},"LnstG7l4BVqT1rOHNuMaq":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenX"},"ethiiyxcmPZiEknPNGm95":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameScreenY"},"1yLFYBHXpUFm3DT3sYuzd":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldX"},"dJYE99WVD-AtjvwAi3tCT":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameWorldY"},"Xo82qx1hZutmKa26lf7Gh":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameX"},"--Glp_7w6kLKVLAKDZvru":{"uri":"/melonJS/docs/melonjs/Pointer.html#gameY"},"RKfyBPshR0-sA2CE9kd0z":{"uri":"/melonJS/docs/melonjs/Pointer.html#height"},"vJNk2WMuWwjRUN32scMSH":{"uri":"/melonJS/docs/melonjs/Pointer.html#isNormalized"},"jrbBvwC3Ub5xbTCaWGXUD":{"uri":"/melonJS/docs/melonjs/Pointer.html#isPrimary"},"cnogwYx3GcuLGypvBmkLZ":{"uri":"/melonJS/docs/melonjs/Pointer.html#left"},"LDyZUlOGb9W_pWLsTfHlX":{"uri":"/melonJS/docs/melonjs/Pointer.html#LEFT_"},"jUhRkiTUPXn5Y_rMTALWy":{"uri":"/melonJS/docs/melonjs/Pointer.html#locked"},"f2vjn3GeZTFDD7SMTytKJ":{"uri":"/melonJS/docs/melonjs/Pointer.html#MIDDLE"},"w_RwZVKIQjoDuiqQtinhj":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementX"},"3WIR9K1SAvakDR0eC8MMh":{"uri":"/melonJS/docs/melonjs/Pointer.html#movementY"},"Pcsedvtp0gtpg6B-OW5rh":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageX"},"ryrmxjPmlGDUTQZQq6FKU":{"uri":"/melonJS/docs/melonjs/Pointer.html#pageY"},"ohQHxFetQx0RTcA5LoozZ":{"uri":"/melonJS/docs/melonjs/Pointer.html#pointerId"},"JTMT0uayNWyIoH5_9d_hT":{"uri":"/melonJS/docs/melonjs/Pointer.html#right"},"aqILPeBq_PdebbRNJh3xZ":{"uri":"/melonJS/docs/melonjs/Pointer.html#RIGHT_"},"VUT3fnpSEx9H0DLPSb_4-":{"uri":"/melonJS/docs/melonjs/Pointer.html#top"},"kJiOciZxC3r2X7s0FN-8b":{"uri":"/melonJS/docs/melonjs/Pointer.html#type"},"p4-exjlpvxRICaNVR7Fsw":{"uri":"/melonJS/docs/melonjs/Pointer.html#width"},"G9zAdjMq_83UekvmKr-5j":{"uri":"/melonJS/docs/melonjs/Pointer.html#x"},"a4Ftkxf3OIZD7iVD9EYfB":{"uri":"/melonJS/docs/melonjs/Pointer.html#y"},"tA08Y4V7gncLUnjMi9fFN":{"uri":"/melonJS/docs/melonjs/Pointer.html#add"},"5AUOvAhciOGg08YyKGotk":{"uri":"/melonJS/docs/melonjs/Pointer.html#addBounds"},"NQXLNsYZ6beH9Bh-e1eIL":{"uri":"/melonJS/docs/melonjs/Pointer.html#addFrame"},"ZpZYHPeg7Hd_AYwANXFzJ":{"uri":"/melonJS/docs/melonjs/Pointer.html#addPoint"},"w-QDPtnuJ_anM8aUax0qw":{"uri":"/melonJS/docs/melonjs/Pointer.html#centerOn"},"bAvITRgyp7uKrcUrVtTpH":{"uri":"/melonJS/docs/melonjs/Pointer.html#clear"},"yatA2yGHJcjs8GikobNpI":{"uri":"/melonJS/docs/melonjs/Pointer.html#clone"},"CJyc_VbpAOc21KZow2ACu":{"uri":"/melonJS/docs/melonjs/Pointer.html#contains"},"JdekbxbGrVnTP5rGwZ8Dj":{"uri":"/melonJS/docs/melonjs/Pointer.html#isFinite"},"RFr7Rs11hLZV6UUCXiUVq":{"uri":"/melonJS/docs/melonjs/Pointer.html#overlaps"},"VbrsqAAo3qADlIBWvgkub":{"uri":"/melonJS/docs/melonjs/Pointer.html#setMinMax"},"WVmAGRiEPJw822HMJTCPk":{"uri":"/melonJS/docs/melonjs/Pointer.html#shift"},"VQ1OR5BEoVTayjuXUntZ3":{"uri":"/melonJS/docs/melonjs/Pointer.html#toPolygon"},"JtgQUKy_rzIJ-oh7NYnQV":{"uri":"/melonJS/docs/melonjs/Pointer.html#translate"},"aJmpqi-sOp0GqyZpeI4qo":{"uri":"/melonJS/docs/melonjs/Pointer.html#update"},"y3aqpg6xX0K1DXAlP5qr4":{"uri":"/melonJS/docs/melonjs/Pointer.html#set"},"qDcrKne5xTg0-eg6WKv82":{"uri":"/melonJS/docs/melonjs/Polygon.html"},"U6pN_FyNptXspxFOrv8kK":{"uri":"/melonJS/docs/melonjs/Polygon.html#points"},"nVB36VtgHDa7QGoa3fOt_":{"uri":"/melonJS/docs/melonjs/Polygon.html#pos"},"jUKloLjcIhu-YKb1OylDq":{"uri":"/melonJS/docs/melonjs/Polygon.html#type"},"5IGMdyvX13B5kI-uLJtzY":{"uri":"/melonJS/docs/melonjs/Polygon.html#clone"},"bAo0-pghWHRDJH333bjCP":{"uri":"/melonJS/docs/melonjs/Polygon.html#constructor"},"6ZgFLu1svpBv0BmqGe7QY":{"uri":"/melonJS/docs/melonjs/Polygon.html#contains"},"MDkmv02UPSlaIxkjq_7Yb":{"uri":"/melonJS/docs/melonjs/Polygon.html#getBounds"},"S3wlGs8hnZ2bTfxyqlVOH":{"uri":"/melonJS/docs/melonjs/Polygon.html#getIndices"},"bNEnsn5ScO38i_jyvXvKz":{"uri":"/melonJS/docs/melonjs/Polygon.html#isConvex"},"XboemduxSfAiCUogQ3C0P":{"uri":"/melonJS/docs/melonjs/Polygon.html#recalc"},"PWwnLXpjsMaz81jt-M6_o":{"uri":"/melonJS/docs/melonjs/Polygon.html#rotate"},"9AqsjCYpHeL32A0qawMbV":{"uri":"/melonJS/docs/melonjs/Polygon.html#scale"},"2Ca2HYZxyDkSSwUdFfiX2":{"uri":"/melonJS/docs/melonjs/Polygon.html#scaleV"},"Y5cNjLpG1lELidIu9LWr8":{"uri":"/melonJS/docs/melonjs/Polygon.html#setShape"},"6_Qb-ToCYfoek5UmkJko9":{"uri":"/melonJS/docs/melonjs/Polygon.html#setVertices"},"nA1o5QutG84vpp1ff6HGO":{"uri":"/melonJS/docs/melonjs/Polygon.html#shift"},"Mj3-J8h7in3cIps7OwRn8":{"uri":"/melonJS/docs/melonjs/Polygon.html#to2d"},"KM0oaoZ5qu0X__2rIL6ya":{"uri":"/melonJS/docs/melonjs/Polygon.html#toIso"},"9wQX1KB4GeArzuVUlulrL":{"uri":"/melonJS/docs/melonjs/Polygon.html#transform"},"5DSE0T1dRX0yxkF0CEL6d":{"uri":"/melonJS/docs/melonjs/Polygon.html#translate"},"cxig72kYhg2VgDdwTmo1o":{"uri":"/melonJS/docs/melonjs/Polygon.html#updateBounds"},"skyWPwrbo74iWPQxz6bZN":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html"},"XjT2DfRLmqHBi8l2LS-t-":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#attributes"},"f5pwnMYofHr3Rbb7NKyF1":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#currentShader"},"dRoj67NoI7w2X3Fbxxwm6":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#defaultShader"},"-V-8NTZfzY2MGmy3NDiNf":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#mode"},"sPlIonPdrsfCqS10TRCdR":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexByteSize"},"43tsPHCJq1TF6HjyTqRc1":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexData"},"cFMQ-L-rEJ9cgXIkAhhE6":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#vertexSize"},"eN_owVNz-zBKYD4WD-wcI":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#addAttribute"},"727kYpwqqI66sSc-D863f":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#bind"},"zSVTOlQvvw8x1DAA9cckY":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#constructor"},"QHwwqaxug4ELQb3Eu5Sp4":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#drawVertices"},"4AhS1LyyK4p2sT6QYQADW":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#flush"},"WTmnTXSGWfT37LAI0Xpbg":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#setProjection"},"K5ruO5i3xgjr-ZjUNyZOX":{"uri":"/melonJS/docs/melonjs/PrimitiveCompositor.html#useShader"},"1eIXUeMxmte8oz0t3nYlT":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html"},"fCyjLQ8pTQjChxjnbgK-7":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#attributes"},"OjP5NfvIQKJ2r_XUotqFh":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#currentShader"},"yM9UYokz2YrgtzYTEenAL":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#defaultShader"},"tHwQx2QseztzgIkQd9nz3":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#mode"},"IN66q3RIJi9L493piYuCd":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexByteSize"},"DeO8Y9qLBQS7RM6iipqmU":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexData"},"ASLAqCAA-GfeB2vYxkJed":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#vertexSize"},"8weycSFwPsWA_Es-9xuZL":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addAttribute"},"trEz7Vvp_QQtUuKC_kez2":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#addQuad"},"zQl9CkzAtmYDWmAVNgkPa":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bind"},"DiWfYuUBZdlXpZfl2rSy_":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#bindTexture2D"},"unNSG-4LXFR7Xp9UZyjmh":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#constructor"},"BF20_K8JzHXH90t49K9qr":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#createTexture2D"},"fP7YIcmd4HGakcUAvp8nc":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#deleteTexture2D"},"XkawKMDYmU9BfGdynWN7H":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#flush"},"Ngy7hrCN6yQEsRRIOLZCF":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#getTexture2D"},"FAYkec9Kap8mCk5ooLSy5":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#setProjection"},"Z5YzRiLAIS7528vPD1gyP":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#unbindTexture2D"},"DNnbkv4qw7pcsDv2UujQg":{"uri":"/melonJS/docs/melonjs/QuadCompositor.html#useShader"},"gs8HqqsoXMoQZ_EKJLdAA":{"uri":"/melonJS/docs/melonjs/QuadTree.html"},"Jxy86SxTFiw3zj8hY19Ou":{"uri":"/melonJS/docs/melonjs/QuadTree.html#clear"},"QGRpLbd-c6d306yEVWURj":{"uri":"/melonJS/docs/melonjs/QuadTree.html#constructor"},"SQJYPKNAs3a7iYra2tWSs":{"uri":"/melonJS/docs/melonjs/QuadTree.html#hasChildren"},"H--jNtzlSsuPA69RREpzt":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insert"},"_o9IOQ8sHKFEFOJnWZfIm":{"uri":"/melonJS/docs/melonjs/QuadTree.html#insertContainer"},"rnZ_Y7MpHHWLP0XgXv_pP":{"uri":"/melonJS/docs/melonjs/QuadTree.html#isPrunable"},"4g4WgZY0yz89UPFcavj9B":{"uri":"/melonJS/docs/melonjs/QuadTree.html#remove"},"v-QUvkbaFHCJWhlTaBwvL":{"uri":"/melonJS/docs/melonjs/QuadTree.html#retrieve"},"DjyOgZoAYUxw3wBufkCzR":{"uri":"/melonJS/docs/melonjs/Rect.html"},"uJMKuPjA5w1kafZtDdYl-":{"uri":"/melonJS/docs/melonjs/Rect.html#bottom"},"XyrfF1i1K5TaBxqfYBoJA":{"uri":"/melonJS/docs/melonjs/Rect.html#centerX"},"T4OEGXg7hdQAX7AD-tK0Q":{"uri":"/melonJS/docs/melonjs/Rect.html#centerY"},"3lot2mvi4AADzfOYmor2z":{"uri":"/melonJS/docs/melonjs/Rect.html#height"},"DmswUBzmnpWjwRDo03vcy":{"uri":"/melonJS/docs/melonjs/Rect.html#left"},"iU6_P0WYHFhGpfnUOMhpp":{"uri":"/melonJS/docs/melonjs/Rect.html#points"},"5OZ2MsVXS87yxeerAwIQf":{"uri":"/melonJS/docs/melonjs/Rect.html#pos"},"MfYzHvRRuC19Qe2Ty6_Uz":{"uri":"/melonJS/docs/melonjs/Rect.html#right"},"4hg1AxmtdQYjq-2t0bhxr":{"uri":"/melonJS/docs/melonjs/Rect.html#top"},"RvNWHMs6t8OM0PkzLlUiS":{"uri":"/melonJS/docs/melonjs/Rect.html#type"},"mkjB6yhfKdwZ76iu7k97m":{"uri":"/melonJS/docs/melonjs/Rect.html#width"},"tuhw7vD_73LdihhhwVdl0":{"uri":"/melonJS/docs/melonjs/Rect.html#centerOn"},"lXD9p8PKL1WspOtYxum6_":{"uri":"/melonJS/docs/melonjs/Rect.html#clone"},"TJZABtVcnsmUyyWUgG8Uo":{"uri":"/melonJS/docs/melonjs/Rect.html#constructor"},"LYpVN50PrsMAmUtPpakgi":{"uri":"/melonJS/docs/melonjs/Rect.html#contains"},"OTxqjNUVChe9J624D7us_":{"uri":"/melonJS/docs/melonjs/Rect.html#copy"},"piDFP_gONDYTyMaXmcK1f":{"uri":"/melonJS/docs/melonjs/Rect.html#equals"},"_YvHszLacdcywQJ6pvxOG":{"uri":"/melonJS/docs/melonjs/Rect.html#getBounds"},"6jU-5YejAt9g8vibwGGh_":{"uri":"/melonJS/docs/melonjs/Rect.html#getIndices"},"QjnWQKUMIpJilpnLwkcH4":{"uri":"/melonJS/docs/melonjs/Rect.html#isConvex"},"0nWwoaPB7KUVIW2gEXl-9":{"uri":"/melonJS/docs/melonjs/Rect.html#isFinite"},"rbPA_cdi0_ee1lgL6JkQi":{"uri":"/melonJS/docs/melonjs/Rect.html#overlaps"},"x8rSNZaiIlzqMB0jMG_5o":{"uri":"/melonJS/docs/melonjs/Rect.html#recalc"},"_63aZQr3RrMegNxvqqyQq":{"uri":"/melonJS/docs/melonjs/Rect.html#resize"},"V2aqESx7oaIxYqmNq5eG-":{"uri":"/melonJS/docs/melonjs/Rect.html#rotate"},"xASnzRXHhTqJpkjTuQbmj":{"uri":"/melonJS/docs/melonjs/Rect.html#scale"},"T-jGwgWW7ObTfqteyxlBn":{"uri":"/melonJS/docs/melonjs/Rect.html#scaleV"},"s5-fNb_ZIp8WkKJfvmkpk":{"uri":"/melonJS/docs/melonjs/Rect.html#setShape"},"3NxNqYdA6sISXaYnM4o3a":{"uri":"/melonJS/docs/melonjs/Rect.html#setVertices"},"Nh2E_v5SoBdBJ9XS_5KRY":{"uri":"/melonJS/docs/melonjs/Rect.html#shift"},"K9Mls74RFE4xkQKvnR9dR":{"uri":"/melonJS/docs/melonjs/Rect.html#to2d"},"Px9Hbzn3RnVPm6WyCQ2ZQ":{"uri":"/melonJS/docs/melonjs/Rect.html#toIso"},"N33bAX5j9jsqOSUDon1Pf":{"uri":"/melonJS/docs/melonjs/Rect.html#toPolygon"},"nTei6mP4U_L1KpauPmbPP":{"uri":"/melonJS/docs/melonjs/Rect.html#transform"},"di_5_zlpNtK382JCfZrwQ":{"uri":"/melonJS/docs/melonjs/Rect.html#translate"},"0qXoRkOzP6Hsu-TZpFu5j":{"uri":"/melonJS/docs/melonjs/Rect.html#union"},"Kmew1rtQf-TM1gd2ldONt":{"uri":"/melonJS/docs/melonjs/Rect.html#updateBounds"},"r8yOEW68JW84OC5s2mjdL":{"uri":"/melonJS/docs/melonjs/Renderable.html"},"rnaWR87BfZZuGBDi-3JrZ":{"uri":"/melonJS/docs/melonjs/Renderable.html#alpha"},"DzFAscYuIDwZipCeBcu5r":{"uri":"/melonJS/docs/melonjs/Renderable.html#alwaysUpdate"},"TdVrt3DA59GbKiU8ewAoW":{"uri":"/melonJS/docs/melonjs/Renderable.html#ancestor"},"HLXp5CRxNEPdR4MKqKrvc":{"uri":"/melonJS/docs/melonjs/Renderable.html#anchorPoint"},"eUhbzZ9E-gaxxgMYAJSjc":{"uri":"/melonJS/docs/melonjs/Renderable.html#autoTransform"},"C_FnEMRnm1t56JimuonmD":{"uri":"/melonJS/docs/melonjs/Renderable.html#blendMode"},"NicJVoP5l-krSiidSounY":{"uri":"/melonJS/docs/melonjs/Renderable.html#body"},"GNP4msSQGVISrkWDq0nlc":{"uri":"/melonJS/docs/melonjs/Renderable.html#bottom"},"_uXdOqSWJJ5XFG0alzJze":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerX"},"tz0JXPpRGzBqmIkdslXeI":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerY"},"NRjNem2zSws2T4O9KwcIM":{"uri":"/melonJS/docs/melonjs/Renderable.html#currentTransform"},"sdPM9rTqVqamxiNXmCIv3":{"uri":"/melonJS/docs/melonjs/Renderable.html#depth"},"cFzJBwFfFE2Y8GH3vAoiu":{"uri":"/melonJS/docs/melonjs/Renderable.html#floating"},"evRQJXPAnSO9YSsjhXXli":{"uri":"/melonJS/docs/melonjs/Renderable.html#GUID"},"WpULNxGImK7ZvMiiS1iqo":{"uri":"/melonJS/docs/melonjs/Renderable.html#height"},"5o4C56AaQQJmYZIT5no0h":{"uri":"/melonJS/docs/melonjs/Renderable.html#inViewport"},"d17dfBqo5uaEDymHY2u5I":{"uri":"/melonJS/docs/melonjs/Renderable.html#isDirty"},"4brzpHrw6AOYYQkGB60u9":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedX"},"wDIX7YiCn4RyN6KWtAHWF":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFlippedY"},"WX8OmN4NS8O9YXf0bwmtI":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFloating"},"NN3uGddUCeYfKfaFCrAu7":{"uri":"/melonJS/docs/melonjs/Renderable.html#isKinematic"},"qulOdUQ5Rt-sOeT1LKqQH":{"uri":"/melonJS/docs/melonjs/Renderable.html#isPersistent"},"dHuyXlgSIMRCxlpF63uXz":{"uri":"/melonJS/docs/melonjs/Renderable.html#left"},"9gZr5Velg3VPvxseVswsw":{"uri":"/melonJS/docs/melonjs/Renderable.html#mask"},"LiCshKfqqKv6yjqf8DcpL":{"uri":"/melonJS/docs/melonjs/Renderable.html#name"},"0JejQYUlkDvgoki9sAIga":{"uri":"/melonJS/docs/melonjs/Renderable.html#onVisibilityChange"},"qNe7zX7B4guR-Hf5ykfXz":{"uri":"/melonJS/docs/melonjs/Renderable.html#points"},"lQ9PDMBXAh4ApaC5nLeR8":{"uri":"/melonJS/docs/melonjs/Renderable.html#pos"},"lvUt3YuQtT257_cVr3qTy":{"uri":"/melonJS/docs/melonjs/Renderable.html#right"},"Zrv6pdrL1gnmftgiFmlMi":{"uri":"/melonJS/docs/melonjs/Renderable.html#shader"},"Pyzkw5be9geZlW5hqOBnA":{"uri":"/melonJS/docs/melonjs/Renderable.html#tint"},"Ti05TxO3A316_yvEsgeEe":{"uri":"/melonJS/docs/melonjs/Renderable.html#top"},"MSJ3ddOWnYjjzpb8iL3kY":{"uri":"/melonJS/docs/melonjs/Renderable.html#type"},"1saB9MRmF6lRaGxxKdBIL":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateWhenPaused"},"v-JjVzAemzGdyjA1V0QRf":{"uri":"/melonJS/docs/melonjs/Renderable.html#width"},"NurX9-7vdUjHPH2EQhHrT":{"uri":"/melonJS/docs/melonjs/Renderable.html#angleTo"},"qz1nX45A5qDy9htk7QGSg":{"uri":"/melonJS/docs/melonjs/Renderable.html#centerOn"},"X67YcJ50WReNsx6cynU1v":{"uri":"/melonJS/docs/melonjs/Renderable.html#clone"},"g96mhY78vRRSSvlSWtoMC":{"uri":"/melonJS/docs/melonjs/Renderable.html#constructor"},"RZ9jMh6hYYKdylsT5Y2ue":{"uri":"/melonJS/docs/melonjs/Renderable.html#contains"},"TjfkS7b-fAi2LYULJM2cW":{"uri":"/melonJS/docs/melonjs/Renderable.html#copy"},"0G0gy-eqADqqaqj4UrLlF":{"uri":"/melonJS/docs/melonjs/Renderable.html#distanceTo"},"rEJhlpY9WV1Va2_qUgOy2":{"uri":"/melonJS/docs/melonjs/Renderable.html#draw"},"ZbCTCmEvD57smK4vXiFZr":{"uri":"/melonJS/docs/melonjs/Renderable.html#equals"},"tdRUrtu_d_Asjz_z8rDxC":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipX"},"-POTmV-GRpUwUGxCQTK7Y":{"uri":"/melonJS/docs/melonjs/Renderable.html#flipY"},"zby5l5jWmAN9GBqnzI1fN":{"uri":"/melonJS/docs/melonjs/Renderable.html#getAbsolutePosition"},"bDeugRCTaPPFPG91MrG7C":{"uri":"/melonJS/docs/melonjs/Renderable.html#getBounds"},"CM5ANbuxVks1EHcG-m_XJ":{"uri":"/melonJS/docs/melonjs/Renderable.html#getIndices"},"ac3Xae1TYAjjt_j3CGmhX":{"uri":"/melonJS/docs/melonjs/Renderable.html#getOpacity"},"d2lr3HZl2YCy2VrO0QA3a":{"uri":"/melonJS/docs/melonjs/Renderable.html#isConvex"},"vt9oZmFGsmTXz34bsnwQS":{"uri":"/melonJS/docs/melonjs/Renderable.html#isFinite"},"ilOEOsoD7uJgaGNAzFRNp":{"uri":"/melonJS/docs/melonjs/Renderable.html#lookAt"},"fHxknThB5Sy8YS1ZMX2pt":{"uri":"/melonJS/docs/melonjs/Renderable.html#onCollision"},"g8hsNA6Kljn9nenagIc59":{"uri":"/melonJS/docs/melonjs/Renderable.html#onDestroyEvent"},"sS6Ggnru7H2uAma4VbjGD":{"uri":"/melonJS/docs/melonjs/Renderable.html#overlaps"},"mvQbR7MKq82jCuL22GZAh":{"uri":"/melonJS/docs/melonjs/Renderable.html#postDraw"},"KAlEFk7VlUK2RdNWcKhYw":{"uri":"/melonJS/docs/melonjs/Renderable.html#preDraw"},"XyT_NX_QNBT1shzcRriq2":{"uri":"/melonJS/docs/melonjs/Renderable.html#recalc"},"fBnHY2bwQ4qbiFMCcga1W":{"uri":"/melonJS/docs/melonjs/Renderable.html#resize"},"g49Vmyj9RGWkPLcCxE2Re":{"uri":"/melonJS/docs/melonjs/Renderable.html#rotate"},"Z8kKDLchMKEfKR12HPCOi":{"uri":"/melonJS/docs/melonjs/Renderable.html#scale"},"Q0-24Tq-RxyvNRvFzKn1C":{"uri":"/melonJS/docs/melonjs/Renderable.html#scaleV"},"twHjSoIWEhDtqyKDOJe4K":{"uri":"/melonJS/docs/melonjs/Renderable.html#setOpacity"},"6LZEQVq3PA18fkICk2LJ3":{"uri":"/melonJS/docs/melonjs/Renderable.html#setShape"},"Qg0bVblZ6ocBN1uKX4Du_":{"uri":"/melonJS/docs/melonjs/Renderable.html#setVertices"},"Za4GrCdJN9URI8Os-axV2":{"uri":"/melonJS/docs/melonjs/Renderable.html#shift"},"WJmUX_O_ogpsQ5ShK2TSI":{"uri":"/melonJS/docs/melonjs/Renderable.html#to2d"},"DFW5aOyjulB7HRkBm9tUR":{"uri":"/melonJS/docs/melonjs/Renderable.html#toIso"},"fGLUlPHd9ZlIbwSi9Lvsi":{"uri":"/melonJS/docs/melonjs/Renderable.html#toPolygon"},"Ps6pIW7pqBURo2_rvegO_":{"uri":"/melonJS/docs/melonjs/Renderable.html#transform"},"NY5D9sgREaMrvEe0Oy4WV":{"uri":"/melonJS/docs/melonjs/Renderable.html#translate"},"siOQgG7QAEMBGmxPlkLBs":{"uri":"/melonJS/docs/melonjs/Renderable.html#union"},"EfdjgrX_nmTICusrmc9EV":{"uri":"/melonJS/docs/melonjs/Renderable.html#update"},"ZAbK9WTMx6k8GzSJv9cIx":{"uri":"/melonJS/docs/melonjs/Renderable.html#updateBounds"},"ScKeihjh0KjnAV5YOneuv":{"uri":"/melonJS/docs/melonjs/Renderable.html#onAnchorUpdate"},"V2qz8Y1alSPqiV3oTqW4L":{"uri":"/melonJS/docs/melonjs/Renderer.html"},"AP5dpTI7iILb2G9seILja":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html"},"7JPWFRRfybTCL_rVmlxL9":{"uri":"/melonJS/docs/melonjs/Renderer/getHeight.html#constructor"},"j6Fb-txnmhbaf9qJYwnBH":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html"},"uWp3v8-bkz8ZkcYzIuz_t":{"uri":"/melonJS/docs/melonjs/Renderer/getWidth.html#constructor"},"oGUHE_Ij_fGUhOcwb7uvd":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html"},"_UYM6WFzIy0shExYSoydM":{"uri":"/melonJS/docs/melonjs/Renderer/Texture.html#constructor"},"UZ3vVGB2ypqi-einHAkX9":{"uri":"/melonJS/docs/melonjs/Renderer.html#depthTest"},"Jv2d07Ghr8zUkcdT1GNtV":{"uri":"/melonJS/docs/melonjs/Renderer.html#designRatio"},"768rbriJ3rOe0n7H6LKBU":{"uri":"/melonJS/docs/melonjs/Renderer.html#height"},"j1zbY3JTHNEOEuq1lW82I":{"uri":"/melonJS/docs/melonjs/Renderer.html#isContextValid"},"CLitLjbiQ8L5v3mNbMqBw":{"uri":"/melonJS/docs/melonjs/Renderer.html#path2D"},"kN0PgJQHLirB4beR8n_08":{"uri":"/melonJS/docs/melonjs/Renderer.html#scaleRatio"},"mdG4NcTLmM59R79R5p7sF":{"uri":"/melonJS/docs/melonjs/Renderer.html#settings"},"gP-AGj0pXBPkWmIGe-rC3":{"uri":"/melonJS/docs/melonjs/Renderer.html#type"},"mppsUOrbQmJczZaGIhyjo":{"uri":"/melonJS/docs/melonjs/Renderer.html#width"},"wE8S822cry5JwsXImmbvA":{"uri":"/melonJS/docs/melonjs/Renderer.html#clear"},"losShCMdAwTJNC9fcWwvn":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearMask"},"vo6bSpp5SNyPJz8nYToCw":{"uri":"/melonJS/docs/melonjs/Renderer.html#clearTint"},"Jrnt8iTDSNGSTpUhVC1q-":{"uri":"/melonJS/docs/melonjs/Renderer.html#constructor"},"Zuk26hLBTuUBpyrAwYQAt":{"uri":"/melonJS/docs/melonjs/Renderer.html#fill"},"_R4XxAxiY_lRkxYy7g7BN":{"uri":"/melonJS/docs/melonjs/Renderer.html#flush"},"xV8d_ALdeHvyt87Ke9yJ2":{"uri":"/melonJS/docs/melonjs/Renderer.html#getBlendMode"},"BsP61zzvQYNG1-FA5J5hQ":{"uri":"/melonJS/docs/melonjs/Renderer.html#getCanvas"},"RPEA01UPMHjWusUkPzDqY":{"uri":"/melonJS/docs/melonjs/Renderer.html#getColor"},"isUe2s19zPM7idNN3Q9aI":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext"},"yYhwLBn16f3HU0u1r_5aD":{"uri":"/melonJS/docs/melonjs/Renderer.html#getContext2d"},"7mxaRv5dVihjZOLy2ToDl":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenCanvas"},"UX4R1VYAgTnRvbkCEeaMI":{"uri":"/melonJS/docs/melonjs/Renderer.html#getScreenContext"},"VGyXPcPHfVr0OCaUzY96X":{"uri":"/melonJS/docs/melonjs/Renderer.html#globalAlpha"},"zSTlzUkfTL-9U6H6swpIe":{"uri":"/melonJS/docs/melonjs/Renderer.html#overlaps"},"aJHhTVNXnwlgi9nFhpy23":{"uri":"/melonJS/docs/melonjs/Renderer.html#reset"},"vYA0ANNG1KUTAYkrracXM":{"uri":"/melonJS/docs/melonjs/Renderer.html#resize"},"eqRDrpULAaE6Xi0hPOcyE":{"uri":"/melonJS/docs/melonjs/Renderer.html#setAntiAlias"},"m9VJf1_Hq4gwHRk_ZX2d-":{"uri":"/melonJS/docs/melonjs/Renderer.html#setMask"},"b9IV-X3F2wV1bc9rUqTcp":{"uri":"/melonJS/docs/melonjs/Renderer.html#setProjection"},"Y0eFrBok6OL2U4Dace-E2":{"uri":"/melonJS/docs/melonjs/Renderer.html#setTint"},"OxzToNr8qlDg750s2njaS":{"uri":"/melonJS/docs/melonjs/Renderer.html#stroke"},"YJtDmHAJIDyzzIOWTkjdV":{"uri":"/melonJS/docs/melonjs/Renderer.html#tint"},"ByopwKL0HIlWda3s2Gpyo":{"uri":"/melonJS/docs/melonjs/Renderer.html#toBlob"},"aNkIZlvJy3ZayMw6RxP83":{"uri":"/melonJS/docs/melonjs/Renderer.html#toDataURL"},"mKZ_eelkQ9EkofK9Uofgw":{"uri":"/melonJS/docs/melonjs/Renderer.html#toImageBitmap"},"6R3vJf0UFJF124E-XUCxs":{"uri":"/melonJS/docs/melonjs/ResponseObject.html"},"kz2HhutDTxR3YK7-5OjNr":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#a"},"2JiTp21WaVlhOjNJeqItQ":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#aInB"},"_GdSNqvlPHZ5XcmqWAOvl":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#b"},"PVLkDDRJzlC7sOab6EeZa":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#bInA"},"nVMrJ2YswsmfclJc6xf1Q":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeA"},"KIcEudbleTjcnH0sm8BEL":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#indexShapeB"},"Q80k3GlAdQJBGVJmHgNo5":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlap"},"6K3JEs0osWJq7jFYVxgRm":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapN"},"m_z1OgjpNMw_M_CAETH90":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#overlapV"},"lwm047JTolHmO3vzgHXA4":{"uri":"/melonJS/docs/melonjs/ResponseObject.html#clear"},"gtQnlXbi1kL6FESdmkHdj":{"uri":"/melonJS/docs/melonjs/RoundRect.html"},"O722GZTNnwpxFWqIAQgav":{"uri":"/melonJS/docs/melonjs/RoundRect.html#bottom"},"GJ5YrVo9givFeIhJXjxeJ":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerX"},"CEzrvP9AQnUSI5r_U0xI_":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerY"},"icf00RWkXao7tcbkJAjLG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#height"},"yCt-hl-v_yCoiPPEAoJaU":{"uri":"/melonJS/docs/melonjs/RoundRect.html#left"},"_nG6r3EzjF9cLxzZ5f0HG":{"uri":"/melonJS/docs/melonjs/RoundRect.html#points"},"pXtiID52cPJ_tuFYlfvnD":{"uri":"/melonJS/docs/melonjs/RoundRect.html#pos"},"1kpLGKuykx6RDz6gjQ68u":{"uri":"/melonJS/docs/melonjs/RoundRect.html#radius"},"AgPhPPxt2hsG6wXcEgP1o":{"uri":"/melonJS/docs/melonjs/RoundRect.html#right"},"iMt2pT6Mw_0RZSSLQ41N7":{"uri":"/melonJS/docs/melonjs/RoundRect.html#top"},"qBYqOQiXstYtIc_tVO7Bt":{"uri":"/melonJS/docs/melonjs/RoundRect.html#type"},"bcjouSu2uxB4W5iuXR6_y":{"uri":"/melonJS/docs/melonjs/RoundRect.html#width"},"AZRG0HjjLiU32XObyDH4Z":{"uri":"/melonJS/docs/melonjs/RoundRect.html#centerOn"},"fyASpNfUExinHb9uW9uZ4":{"uri":"/melonJS/docs/melonjs/RoundRect.html#clone"},"t22TMgC-QNWaTipB9lD9X":{"uri":"/melonJS/docs/melonjs/RoundRect.html#constructor"},"Oa0yGiHy5n3wgqbyy915T":{"uri":"/melonJS/docs/melonjs/RoundRect.html#contains"},"G9vOz6m-H0efO3H1opmGt":{"uri":"/melonJS/docs/melonjs/RoundRect.html#copy"},"l9VJPgo4GeKihTfztqlYi":{"uri":"/melonJS/docs/melonjs/RoundRect.html#equals"},"mqt6TgCmzL0Jo9pv_vDsy":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getBounds"},"8nzn_ofEKXnWpeGBew6pX":{"uri":"/melonJS/docs/melonjs/RoundRect.html#getIndices"},"eKXd5T4NVxiJYar7BC7aC":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isConvex"},"uCL62lAsQlfolzTVlJppz":{"uri":"/melonJS/docs/melonjs/RoundRect.html#isFinite"},"7ecAoTe8koBgOYJl_ZbEE":{"uri":"/melonJS/docs/melonjs/RoundRect.html#overlaps"},"4eOCkyycxuOYitLnaadBN":{"uri":"/melonJS/docs/melonjs/RoundRect.html#recalc"},"CQu4Ko0VpLO8QBObTKoVH":{"uri":"/melonJS/docs/melonjs/RoundRect.html#resize"},"d4tvofUQluP7GrD-Gkow9":{"uri":"/melonJS/docs/melonjs/RoundRect.html#rotate"},"GhcRo2y6dCCdztmgXE2Xa":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scale"},"RNQlBNCg0g9noByhKqd29":{"uri":"/melonJS/docs/melonjs/RoundRect.html#scaleV"},"bkKggpefIqVNKhDTKB3Sv":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setShape"},"US6a4K3Wv4bxZ-KQ3jw9_":{"uri":"/melonJS/docs/melonjs/RoundRect.html#setVertices"},"q1wCPrWh8s1z7si6eenh3":{"uri":"/melonJS/docs/melonjs/RoundRect.html#shift"},"hN2XNP_ZIEo_wsx7i2HwL":{"uri":"/melonJS/docs/melonjs/RoundRect.html#to2d"},"dwTHfg12oq9nftDeddPzL":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toIso"},"_qauuRo6XfhQG7tTFZUOe":{"uri":"/melonJS/docs/melonjs/RoundRect.html#toPolygon"},"vq0XNDqaCI2HKOd5Ozi84":{"uri":"/melonJS/docs/melonjs/RoundRect.html#transform"},"cugBfOTp7fv7cb8KpTTYi":{"uri":"/melonJS/docs/melonjs/RoundRect.html#translate"},"pZoZWjhKEEeKIAawuxrok":{"uri":"/melonJS/docs/melonjs/RoundRect.html#union"},"6qNcvIFL0ZSuoithOBWPh":{"uri":"/melonJS/docs/melonjs/RoundRect.html#updateBounds"},"v4N9WHJGdz5RlHi8bSGTo":{"uri":"/melonJS/docs/melonjs/Sprite.html"},"ifHNrkzpfNTsHA7O9Bnzo":{"uri":"/melonJS/docs/melonjs/Sprite.html#alpha"},"VMUwq8s_Dyu88yk3rFR2d":{"uri":"/melonJS/docs/melonjs/Sprite.html#alwaysUpdate"},"YBg4gZdHEctdZpss9KrNN":{"uri":"/melonJS/docs/melonjs/Sprite.html#ancestor"},"VDK9EMnwtVgxn2iEL-7-d":{"uri":"/melonJS/docs/melonjs/Sprite.html#anchorPoint"},"3jxpBSo4jcRypZ2pJhtXf":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationpause"},"vMUYzq9Vky8ah6aqjBkPI":{"uri":"/melonJS/docs/melonjs/Sprite.html#animationspeed"},"Qt9xyC1GJMQh55Ady0SoV":{"uri":"/melonJS/docs/melonjs/Sprite.html#autoTransform"},"jf_ton196D8vOHSdhflq2":{"uri":"/melonJS/docs/melonjs/Sprite.html#blendMode"},"cDjNqxHjynxJXLt1O0EU3":{"uri":"/melonJS/docs/melonjs/Sprite.html#body"},"3dweDRgwKLWuY53q8FO6c":{"uri":"/melonJS/docs/melonjs/Sprite.html#bottom"},"vP1GahTRdX2qqsZvI4N1y":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerX"},"w7v83K-XfZ54zOh2fSiWL":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerY"},"aZo-Nb6GkcLDhLnlaS-uU":{"uri":"/melonJS/docs/melonjs/Sprite.html#currentTransform"},"AxiHBwpjquSi82kLhpmtN":{"uri":"/melonJS/docs/melonjs/Sprite.html#depth"},"YSfm4caQqAHYArwfPamfO":{"uri":"/melonJS/docs/melonjs/Sprite.html#floating"},"8iKQrCPidMcnyKRM69gaT":{"uri":"/melonJS/docs/melonjs/Sprite.html#GUID"},"Wu4e7s3so7VJj0R17RaLe":{"uri":"/melonJS/docs/melonjs/Sprite.html#height"},"RfXTE-hQaohha5ciFDcPM":{"uri":"/melonJS/docs/melonjs/Sprite.html#inViewport"},"3-5xDl4-xU6RbtcamB-O2":{"uri":"/melonJS/docs/melonjs/Sprite.html#isDirty"},"Unpeq18ZJhOoqCNHcXS_g":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedX"},"SFUyIszLe2A3NpZ4wjgTf":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlippedY"},"h9xsQYwH1wuhCL0rZIlZD":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFloating"},"vb69giE3yQ6Tl7JLRzSMa":{"uri":"/melonJS/docs/melonjs/Sprite.html#isKinematic"},"CLN7TERTL2lTcwGzG_lHf":{"uri":"/melonJS/docs/melonjs/Sprite.html#isPersistent"},"ljBTD8ufRWbir0t0OtH05":{"uri":"/melonJS/docs/melonjs/Sprite.html#left"},"hgVg85g3yBu-D1P4c1B1Z":{"uri":"/melonJS/docs/melonjs/Sprite.html#mask"},"973V0n-1aVa_RTNJx8UX4":{"uri":"/melonJS/docs/melonjs/Sprite.html#name"},"MyqXNizZ-85_OALIv_kC8":{"uri":"/melonJS/docs/melonjs/Sprite.html#offset"},"9LoZTRriaS83uKLfU6RFc":{"uri":"/melonJS/docs/melonjs/Sprite.html#onVisibilityChange"},"iumxPg7gnCJaEEDjND67u":{"uri":"/melonJS/docs/melonjs/Sprite.html#points"},"uTewoLz_5O9NWHtN_k8yT":{"uri":"/melonJS/docs/melonjs/Sprite.html#pos"},"Syt-J3wda4P2xG1V9_S9k":{"uri":"/melonJS/docs/melonjs/Sprite.html#right"},"NEFuPui9AW7SZU2duJrM6":{"uri":"/melonJS/docs/melonjs/Sprite.html#shader"},"G7wQU1hMijPLhiGPnuPhI":{"uri":"/melonJS/docs/melonjs/Sprite.html#source"},"EbWOFSgSv9SuOjBd7_k3G":{"uri":"/melonJS/docs/melonjs/Sprite.html#tint"},"MfWBBlqDW2lhSolRfnvfr":{"uri":"/melonJS/docs/melonjs/Sprite.html#top"},"CwAh53yXusmZHYrEDiRA5":{"uri":"/melonJS/docs/melonjs/Sprite.html#type"},"OqEuK4GKvmaLOdVOu9rE-":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateWhenPaused"},"EJC69bvFvSW6T3MaV3dgb":{"uri":"/melonJS/docs/melonjs/Sprite.html#width"},"WHxTDoPwxqJMipUFiyEaK":{"uri":"/melonJS/docs/melonjs/Sprite.html#addAnimation"},"MMdGIO4JBox6kxDQqxqZF":{"uri":"/melonJS/docs/melonjs/Sprite.html#angleTo"},"tneoF-ixKTvLV6Lc_yx5O":{"uri":"/melonJS/docs/melonjs/Sprite.html#centerOn"},"LRxSmSl67Guw3MNTJtOMf":{"uri":"/melonJS/docs/melonjs/Sprite.html#clone"},"vpomY0dk7JU2rNpdmPWaq":{"uri":"/melonJS/docs/melonjs/Sprite.html#constructor"},"7cxi4J99whHBsfmF6ZLiS":{"uri":"/melonJS/docs/melonjs/Sprite.html#contains"},"8MOSr8oGkft448hfj6yZ3":{"uri":"/melonJS/docs/melonjs/Sprite.html#copy"},"smylPWFVQpeIHdkP2_vAZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#distanceTo"},"Z3WqmnSA2EDtEl-BMlfR2":{"uri":"/melonJS/docs/melonjs/Sprite.html#equals"},"Ekys8j8ZZI0ZWXAN4rf4W":{"uri":"/melonJS/docs/melonjs/Sprite.html#flicker"},"ebwfQszGrijdepSKT5fiR":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipX"},"28OIaJy32FrUPMKnrkK6b":{"uri":"/melonJS/docs/melonjs/Sprite.html#flipY"},"imYmAxvEmZUpsYrFo4aKv":{"uri":"/melonJS/docs/melonjs/Sprite.html#getAbsolutePosition"},"AVyG4GDeBC3xONBAOBs6-":{"uri":"/melonJS/docs/melonjs/Sprite.html#getBounds"},"szCqRtDN8RCwwOg2cHFT6":{"uri":"/melonJS/docs/melonjs/Sprite.html#getCurrentAnimationFrame"},"ld1-_TgfQSUPUBvlIVhAb":{"uri":"/melonJS/docs/melonjs/Sprite.html#getIndices"},"bdOnUjuiIxZ8h-s0WWutY":{"uri":"/melonJS/docs/melonjs/Sprite.html#getOpacity"},"FywfyCD6JbhrGx5-Agk9j":{"uri":"/melonJS/docs/melonjs/Sprite.html#isConvex"},"Nkz1g7lbJcxiwXnm2rmIf":{"uri":"/melonJS/docs/melonjs/Sprite.html#isCurrentAnimation"},"9Tb9xOlJRDHD-liY6hHE1":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFinite"},"9VQPxDNKBkqdMZlqLwBXe":{"uri":"/melonJS/docs/melonjs/Sprite.html#isFlickering"},"P82BMr-bDtGnGr9xuL9r6":{"uri":"/melonJS/docs/melonjs/Sprite.html#lookAt"},"UwgN3DRgWOGdT73F5xA6U":{"uri":"/melonJS/docs/melonjs/Sprite.html#onCollision"},"dbx3ulKFNssA6MkV3cf8F":{"uri":"/melonJS/docs/melonjs/Sprite.html#onDestroyEvent"},"Rokp1bqPMHZqT_phWvolf":{"uri":"/melonJS/docs/melonjs/Sprite.html#overlaps"},"NPAKBctwYEONPAJWFcb7L":{"uri":"/melonJS/docs/melonjs/Sprite.html#postDraw"},"PEALgHJk7UAv_5Nv5-KGx":{"uri":"/melonJS/docs/melonjs/Sprite.html#preDraw"},"ncDUu42ahDAXNGsraVc-Y":{"uri":"/melonJS/docs/melonjs/Sprite.html#recalc"},"SVjYcc9wLBVcW9z-58zTU":{"uri":"/melonJS/docs/melonjs/Sprite.html#resize"},"pG3TEjrd6Q9AhDBhv9ZMx":{"uri":"/melonJS/docs/melonjs/Sprite.html#reverseAnimation"},"WonCMAYKotNpcxjcz_3_K":{"uri":"/melonJS/docs/melonjs/Sprite.html#rotate"},"zSmERw1OHcPPjJXXh-Zff":{"uri":"/melonJS/docs/melonjs/Sprite.html#scale"},"FSw4DO0R3L67TdwRCjxte":{"uri":"/melonJS/docs/melonjs/Sprite.html#scaleV"},"skVHbSfonztSAVYfol0FG":{"uri":"/melonJS/docs/melonjs/Sprite.html#setAnimationFrame"},"RNtehPPwFs03T25a_rXeV":{"uri":"/melonJS/docs/melonjs/Sprite.html#setCurrentAnimation"},"mJfszridTRJosOyTV1zGU":{"uri":"/melonJS/docs/melonjs/Sprite.html#setOpacity"},"6nxwY55WyNIsAwGPtnl5O":{"uri":"/melonJS/docs/melonjs/Sprite.html#setRegion"},"vJIHxz6E7qAL2oBVKkawF":{"uri":"/melonJS/docs/melonjs/Sprite.html#setShape"},"ZUVqYCfrVGWBPEBNbXXXZ":{"uri":"/melonJS/docs/melonjs/Sprite.html#setVertices"},"Rduii-AGWSYClEVEOn7Rj":{"uri":"/melonJS/docs/melonjs/Sprite.html#shift"},"n6HpwQLC8-lQmL-8l4ZJC":{"uri":"/melonJS/docs/melonjs/Sprite.html#to2d"},"HehwXlHn587VwZyunuP7p":{"uri":"/melonJS/docs/melonjs/Sprite.html#toIso"},"V82f0G3ue7CVk8V9nAq9W":{"uri":"/melonJS/docs/melonjs/Sprite.html#toPolygon"},"l8pNz6QCuE--Xn_D5Haln":{"uri":"/melonJS/docs/melonjs/Sprite.html#transform"},"VyZG_SRkSOM6IBFEQt_ou":{"uri":"/melonJS/docs/melonjs/Sprite.html#translate"},"iD_t-6fYR1GdMyeVNO4I5":{"uri":"/melonJS/docs/melonjs/Sprite.html#union"},"gt7kU9Ta2KC7ttwF2RBCe":{"uri":"/melonJS/docs/melonjs/Sprite.html#updateBounds"},"42TvNFkIFfyRRStnkqwGk":{"uri":"/melonJS/docs/melonjs/Sprite.html#draw"},"DO718fGE7St1U9An5rW5G":{"uri":"/melonJS/docs/melonjs/Sprite.html#update"},"n_Fgd2ozZ4Z1UmdpESQBT":{"uri":"/melonJS/docs/melonjs/Sprite.html#onAnchorUpdate"},"W5Azp1oWb9uDeNdglwnaN":{"uri":"/melonJS/docs/melonjs/Stage.html"},"vNY6lEPrHKclILzT17MVD":{"uri":"/melonJS/docs/melonjs/Stage.html#ambientLight"},"J2QbGdiW0crk0DkOyqwbg":{"uri":"/melonJS/docs/melonjs/Stage.html#cameras"},"D7y0ZUgZEU9bBofnyYTKs":{"uri":"/melonJS/docs/melonjs/Stage.html#lights"},"l4ijqo-krepnc7XjZSHem":{"uri":"/melonJS/docs/melonjs/Stage.html#settings"},"90-dlCsX-s4BFUrxrpyqu":{"uri":"/melonJS/docs/melonjs/Stage.html#constructor"},"qveGUCVrdtSCsUUmC6ScB":{"uri":"/melonJS/docs/melonjs/Stage.html#onDestroyEvent"},"CgxH_X0ixQQDWZY6MpbXT":{"uri":"/melonJS/docs/melonjs/Stage.html#onResetEvent"},"22d8_vHl0o8mTQzKq6G2Q":{"uri":"/melonJS/docs/melonjs/Text.html"},"DGsE7QThKowLKxXHbIXMR":{"uri":"/melonJS/docs/melonjs/Text.html#alpha"},"Va-y3OSP8CSQG9pB5SAl0":{"uri":"/melonJS/docs/melonjs/Text.html#alwaysUpdate"},"k1hG8ovdBXYZuic1iSqJb":{"uri":"/melonJS/docs/melonjs/Text.html#ancestor"},"iSCTZPuJkZ0VZ5HxbIWwF":{"uri":"/melonJS/docs/melonjs/Text.html#anchorPoint"},"295ZtaKBkULaV4ndXaP-g":{"uri":"/melonJS/docs/melonjs/Text.html#autoTransform"},"cJMXgfpCGFq78WgrXCRI5":{"uri":"/melonJS/docs/melonjs/Text.html#blendMode"},"DTyx3kSBnS7VFzmiGDtoG":{"uri":"/melonJS/docs/melonjs/Text.html#body"},"4So0hpJbpZLnXXRfQwMs_":{"uri":"/melonJS/docs/melonjs/Text.html#bottom"},"tEPTKPZurboQfkvvnzLNt":{"uri":"/melonJS/docs/melonjs/Text.html#centerX"},"VKYiJULIbcfa11VuFxlRO":{"uri":"/melonJS/docs/melonjs/Text.html#centerY"},"kNGGoSXGKG0FUDLe-5lzI":{"uri":"/melonJS/docs/melonjs/Text.html#currentTransform"},"iAxnrY6N9n709HrlRU53Y":{"uri":"/melonJS/docs/melonjs/Text.html#depth"},"nTAUMQV1rqrnIZoeosEag":{"uri":"/melonJS/docs/melonjs/Text.html#fillStyle"},"3RDDY7f_cymHp0DE8fQcF":{"uri":"/melonJS/docs/melonjs/Text.html#floating"},"YjZKCjQacVrrUGKtsSxR9":{"uri":"/melonJS/docs/melonjs/Text.html#fontSize"},"NWyV3xvwDBAH0uNyfrGNO":{"uri":"/melonJS/docs/melonjs/Text.html#GUID"},"IMtgphWir0ZiG_pLfJuIB":{"uri":"/melonJS/docs/melonjs/Text.html#height"},"fQ-hgHR2QsSTPM0B5Z6OA":{"uri":"/melonJS/docs/melonjs/Text.html#inViewport"},"31DoX2J3OvHc9zftwVaow":{"uri":"/melonJS/docs/melonjs/Text.html#isDirty"},"4dT9Ms-O9owOKmvWJzy89":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedX"},"CLsREBJCVI4JN8RudBn8Q":{"uri":"/melonJS/docs/melonjs/Text.html#isFlippedY"},"39qSGrAX_cParOGiqZVWe":{"uri":"/melonJS/docs/melonjs/Text.html#isFloating"},"Dmj3ATcnNM38eKQLlL1ob":{"uri":"/melonJS/docs/melonjs/Text.html#isKinematic"},"dCZw_xwLg0jqblziaQK-9":{"uri":"/melonJS/docs/melonjs/Text.html#isPersistent"},"XXuCq9GK7mUBUSkreQg2V":{"uri":"/melonJS/docs/melonjs/Text.html#left"},"ZwS0l8uKTmLrhMFM1CE2Y":{"uri":"/melonJS/docs/melonjs/Text.html#lineHeight"},"1pUd7iIQp9esV5aOxMeVy":{"uri":"/melonJS/docs/melonjs/Text.html#lineWidth"},"_1elQarfts2wm0mv8lSM_":{"uri":"/melonJS/docs/melonjs/Text.html#mask"},"QaPEMVTDYSGDZ_8M8-gvJ":{"uri":"/melonJS/docs/melonjs/Text.html#name"},"NUM_KjVrs04HSCexJE-C6":{"uri":"/melonJS/docs/melonjs/Text.html#onVisibilityChange"},"JZ1ZKvxdofLi33EJ1Tgqp":{"uri":"/melonJS/docs/melonjs/Text.html#points"},"UMf8PfcO8t7O-_mcQZPqu":{"uri":"/melonJS/docs/melonjs/Text.html#pos"},"PVotxAARtTIgncC6sPvrt":{"uri":"/melonJS/docs/melonjs/Text.html#right"},"p7Ifuwz9UmwTCZVulAobz":{"uri":"/melonJS/docs/melonjs/Text.html#shader"},"p0qS44fZpQCNkYCgj0YDR":{"uri":"/melonJS/docs/melonjs/Text.html#strokeStyle"},"A9ofBCj00KqPFteV79e9Y":{"uri":"/melonJS/docs/melonjs/Text.html#textAlign"},"sImPHn8lwlDNFj6NrpdTF":{"uri":"/melonJS/docs/melonjs/Text.html#textBaseline"},"dwVgJLJlnoaFTcMWP32db":{"uri":"/melonJS/docs/melonjs/Text.html#tint"},"rqWXpemFMdnK7Al3pFj7f":{"uri":"/melonJS/docs/melonjs/Text.html#top"},"aVbaMRWpChSyQq2kQaT3C":{"uri":"/melonJS/docs/melonjs/Text.html#type"},"rAG2E94A0ECUKTPDTQptV":{"uri":"/melonJS/docs/melonjs/Text.html#updateWhenPaused"},"xou9QR-TR1xmByiV7Wstq":{"uri":"/melonJS/docs/melonjs/Text.html#width"},"TS3ZQGX3a4JkzxKsuc7mP":{"uri":"/melonJS/docs/melonjs/Text.html#wordWrapWidth"},"yPNxb3Z51cNwjuRkD-Qt9":{"uri":"/melonJS/docs/melonjs/Text.html#_text"},"XDTler9MZgjRqTMtEn1ve":{"uri":"/melonJS/docs/melonjs/Text.html#angleTo"},"g2L_Ko_TZhUMpem1CWFyZ":{"uri":"/melonJS/docs/melonjs/Text.html#bold"},"YDj7ustYmy9DjLKJ0gzZy":{"uri":"/melonJS/docs/melonjs/Text.html#centerOn"},"zBz5pLmPRFXid-MLUOXu6":{"uri":"/melonJS/docs/melonjs/Text.html#clone"},"XqPLgT465TwGzs0LVM9ny":{"uri":"/melonJS/docs/melonjs/Text.html#constructor"},"fMW7rng2iNHMK0iAw2bRu":{"uri":"/melonJS/docs/melonjs/Text.html#contains"},"8h7db9CZbfKKVhbILx_lj":{"uri":"/melonJS/docs/melonjs/Text.html#copy"},"659jsMaXv3W-pQQvYq2ot":{"uri":"/melonJS/docs/melonjs/Text.html#distanceTo"},"M26kf-xiYnVgx8j2FHvMD":{"uri":"/melonJS/docs/melonjs/Text.html#draw"},"Y8sLOhfEFxjQjhDCTxv-b":{"uri":"/melonJS/docs/melonjs/Text.html#drawStroke"},"e42aP65_PeioAGFHvrPsT":{"uri":"/melonJS/docs/melonjs/Text.html#equals"},"WY3yKWxQIJvZeo-pM7GY0":{"uri":"/melonJS/docs/melonjs/Text.html#flipX"},"whBb1HEu74QLD2Wq_oh3-":{"uri":"/melonJS/docs/melonjs/Text.html#flipY"},"GM4Onr7m1qvMaPh-ZWEVM":{"uri":"/melonJS/docs/melonjs/Text.html#getAbsolutePosition"},"tMXlLBLvklCESvXVFL9vY":{"uri":"/melonJS/docs/melonjs/Text.html#getBounds"},"Tw7ONExdLgvriSZRU2Tgz":{"uri":"/melonJS/docs/melonjs/Text.html#getIndices"},"T7xvbjJcuzF1FwiTzcU6_":{"uri":"/melonJS/docs/melonjs/Text.html#getOpacity"},"VZEvO5fXqQwUhhsX6qkeI":{"uri":"/melonJS/docs/melonjs/Text.html#isConvex"},"HuRzskbTNj5vKoWzzRMzj":{"uri":"/melonJS/docs/melonjs/Text.html#isFinite"},"z6svn8cW1XxXazfMTo9Wp":{"uri":"/melonJS/docs/melonjs/Text.html#italic"},"GEpkU3TR0U656OQkC8lnh":{"uri":"/melonJS/docs/melonjs/Text.html#lookAt"},"9FxHKcjt500tTa0hs_ja6":{"uri":"/melonJS/docs/melonjs/Text.html#measureText"},"oVBS9ggsxuwNEJyp4cQhN":{"uri":"/melonJS/docs/melonjs/Text.html#onCollision"},"8Yu3cKmUbSMAa-ZINmbZs":{"uri":"/melonJS/docs/melonjs/Text.html#onDestroyEvent"},"-wNK-Q6R7GX6gty9Eo_NL":{"uri":"/melonJS/docs/melonjs/Text.html#overlaps"},"OL6tuVkWwIrmMYHeu9Pqs":{"uri":"/melonJS/docs/melonjs/Text.html#postDraw"},"-p5F0--8w65k21xY7YF3L":{"uri":"/melonJS/docs/melonjs/Text.html#preDraw"},"4ygHE4iZ1L90s09NyHBYM":{"uri":"/melonJS/docs/melonjs/Text.html#recalc"},"43kH5JHPyF-gIrFF1cGHE":{"uri":"/melonJS/docs/melonjs/Text.html#resize"},"1aSp-9HUgCrh2nhLtyb_T":{"uri":"/melonJS/docs/melonjs/Text.html#rotate"},"0iPsHyGepQV1A5WOFK6om":{"uri":"/melonJS/docs/melonjs/Text.html#scale"},"PZyG7GKv4ezy_Nqds7yx0":{"uri":"/melonJS/docs/melonjs/Text.html#scaleV"},"8AWNWnyJMvG2TGLaSk6ml":{"uri":"/melonJS/docs/melonjs/Text.html#setFont"},"NY8rEghJNpgkEsZAGLI1U":{"uri":"/melonJS/docs/melonjs/Text.html#setOpacity"},"mHZW9pYG4_aODMBgMfeqt":{"uri":"/melonJS/docs/melonjs/Text.html#setShape"},"aAyKko8f_cPU6PT_55Rcc":{"uri":"/melonJS/docs/melonjs/Text.html#setText"},"elIgpCgWszG0CY4hkEYQl":{"uri":"/melonJS/docs/melonjs/Text.html#setVertices"},"h0P3nLnjHA0fo_MB_0M2J":{"uri":"/melonJS/docs/melonjs/Text.html#shift"},"1MNy39P859sR3thdZgTKz":{"uri":"/melonJS/docs/melonjs/Text.html#to2d"},"cDJ23GRwHNplzp0_zHleE":{"uri":"/melonJS/docs/melonjs/Text.html#toIso"},"aDTPYEQdT8FXvsZnWOnzf":{"uri":"/melonJS/docs/melonjs/Text.html#toPolygon"},"jepJrRGkOviqH2k6OT5K2":{"uri":"/melonJS/docs/melonjs/Text.html#transform"},"QIFIYH2hqjrn5bG1p7vWm":{"uri":"/melonJS/docs/melonjs/Text.html#translate"},"YA5k70ToxraV-s8Ps9_4S":{"uri":"/melonJS/docs/melonjs/Text.html#union"},"xBwxtWeIfs1j8ODvjlVW-":{"uri":"/melonJS/docs/melonjs/Text.html#update"},"QYgOSipBuVsIpuuFSKODR":{"uri":"/melonJS/docs/melonjs/Text.html#updateBounds"},"aNUFgMfmWUaMOAp0Q-mcN":{"uri":"/melonJS/docs/melonjs/Text.html#onAnchorUpdate"},"5qsK9jkDdLA5WWra3CdYK":{"uri":"/melonJS/docs/melonjs/TextMetrics.html"},"WUvt2jkzcJnN6fXTN3v9j":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#ancestor"},"yRb8SBVJIiyRgmwr1tz58":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#bottom"},"XSpz1oaVl7H64c-INd18r":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#center"},"xD2m63Xsb3nMxeyrXtC0n":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerX"},"miSbVfKA58mPNmuuNkwSz":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerY"},"O2kAb2hcDwDt3-J35G0rj":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#height"},"tuzXuZKdGiH9n-s2Z74Vo":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#left"},"5KHqLPbMTHhKOYMdCNs-2":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#right"},"My2NJdAuM_O31lRHUzIuJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#top"},"5fi1c48h9R-TGWCQkrygN":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#type"},"wNyPrv2_6bYOdLeoN0yw_":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#width"},"A-8SM1lyTzdv_3Z8wmH3x":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#x"},"rodoWuLFvmOEXayvPprJL":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#y"},"fLyUKfunIJMdY6u2gas9v":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#add"},"dw40HIYjo95qbuEYdz8dD":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addBounds"},"c05GUrr73awtJeuPuGT7K":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addFrame"},"gqu3KCaEnvi3gPWobX1DN":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#addPoint"},"epAB-STIx5vvOjx2Qm5AJ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#centerOn"},"LNL_MuP0U83JouzxtpTIj":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clear"},"YdwptpwIW5spLwLUYxlTZ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#clone"},"kAs3OIEPp0vHbF93BUexk":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#constructor"},"a8JdcJ5YyCA16FMO5Bjfs":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#contains"},"dpJ84FVluja_P1N9AlMaN":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#isFinite"},"1eqU9tMshNFu6Ey9ac30n":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineHeight"},"zWoKyx1wgMHQt_OzNaeOP":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#lineWidth"},"o9K1X5GpQ_q0r98pk0lqy":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#measureText"},"fwJrzONeaIL18OUn4xui_":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#overlaps"},"NdIGTLBBBKbHFoo3vOaEY":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#setMinMax"},"8uSTojmCtSK0KA9FVoiVs":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#shift"},"6ONoBxBzJPVOFjCZZE2vG":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#toPolygon"},"uYvG_79s8znGNjPoaI7zX":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#translate"},"Lk4MyofD6eGVOM5pC4sgQ":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#update"},"DQsAWXdOHpHpxdG5wkE8y":{"uri":"/melonJS/docs/melonjs/TextMetrics.html#wordWrap"},"DjNI_MKc2NXbQm2z6S7oa":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html"},"wOPlLzo4m_VeUD6Nd5eI_":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addRegion"},"dbN9DWmvXwGuuWmd9PZNi":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#addUVs"},"0Lcc-5RswIuVDYNEI-Emc":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#constructor"},"hjesoLbJDWG2VPI_Qlk81":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createAnimationFromName"},"OpFe9WJfpI18ifBqV0ohO":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#createSpriteFromName"},"QNx10C57a_y8NV2dsv1tT":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getAtlas"},"g-CIP14CMU2Q3My6lOKRD":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getFormat"},"5_yrrTuKQDHb8F34mRA-I":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getRegion"},"7XVHBzh01WR0BlFqYrTvK":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getTexture"},"6r8oDPAE2fZDFFVtWdwyq":{"uri":"/melonJS/docs/melonjs/TextureAtlas.html#getUVs"},"mQJOVME_Bp32IuJTSHNSV":{"uri":"/melonJS/docs/melonjs/Tile.html"},"5ZhgyY294S58yr-fPQWg4":{"uri":"/melonJS/docs/melonjs/Tile.html#bottom"},"ebx4JUFHcG49jG_TGn5DL":{"uri":"/melonJS/docs/melonjs/Tile.html#center"},"WA4R8MUNYS5tszqRCU4rg":{"uri":"/melonJS/docs/melonjs/Tile.html#centerX"},"dp2ALQFbrLdyk2UwPF5ok":{"uri":"/melonJS/docs/melonjs/Tile.html#centerY"},"q6d1jhE0OP2AIkTF4Dn1H":{"uri":"/melonJS/docs/melonjs/Tile.html#flipped"},"idTYL5w6arTvSkIoiWX57":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedAD"},"GxwgHEIrJNdThq6r-6IkQ":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedX"},"e17YFkiUzzSsIufXpGirE":{"uri":"/melonJS/docs/melonjs/Tile.html#flippedY"},"Z5f7oUWHIzi1r_i1ddNNx":{"uri":"/melonJS/docs/melonjs/Tile.html#height"},"iqXwmj_p_t8qI0efca5XT":{"uri":"/melonJS/docs/melonjs/Tile.html#left"},"01_weYdAcdLfc99IWxODN":{"uri":"/melonJS/docs/melonjs/Tile.html#right"},"hytgmuDCEPs7IywvBUy2h":{"uri":"/melonJS/docs/melonjs/Tile.html#tileId"},"BsP-Hv_ndvcobVA0u6KnX":{"uri":"/melonJS/docs/melonjs/Tile.html#tileset"},"pVTWp6Rk9KJhH1meZ0hc-":{"uri":"/melonJS/docs/melonjs/Tile.html#top"},"oU9E3v1FXxYbf-tYTbwbr":{"uri":"/melonJS/docs/melonjs/Tile.html#type"},"prvYp9NIBty8jN17JrreC":{"uri":"/melonJS/docs/melonjs/Tile.html#width"},"mmoOs1xO9HBEWBflJp4CO":{"uri":"/melonJS/docs/melonjs/Tile.html#x"},"QhGSbvklOHGRh460JzmuK":{"uri":"/melonJS/docs/melonjs/Tile.html#y"},"ihp5gdiqu73tNF0TIetUC":{"uri":"/melonJS/docs/melonjs/Tile.html#add"},"EIFTbatIMd3lIElbcN5sd":{"uri":"/melonJS/docs/melonjs/Tile.html#addBounds"},"8OP8xRaEnwkgK92_we0nO":{"uri":"/melonJS/docs/melonjs/Tile.html#addFrame"},"FlzfoeCLswJO3lI6r2FSy":{"uri":"/melonJS/docs/melonjs/Tile.html#addPoint"},"YBLEBeGsq_FpZKNZ9TnfH":{"uri":"/melonJS/docs/melonjs/Tile.html#centerOn"},"rXCz02hc2DC_-yi-Oz9js":{"uri":"/melonJS/docs/melonjs/Tile.html#clear"},"DAyGMPMffEf3EmWeCzZG-":{"uri":"/melonJS/docs/melonjs/Tile.html#clone"},"MziR3cTFGqC-MB1ADAFlt":{"uri":"/melonJS/docs/melonjs/Tile.html#constructor"},"Q8XeQQeBopOEzgn0ZRCqv":{"uri":"/melonJS/docs/melonjs/Tile.html#contains"},"vFt11SAQwfYcQ0kYnkSQo":{"uri":"/melonJS/docs/melonjs/Tile.html#getRenderable"},"M93UobdLNWKjO3W4CqZpQ":{"uri":"/melonJS/docs/melonjs/Tile.html#isFinite"},"XoQ2cTb1VHOpuKt_OORL3":{"uri":"/melonJS/docs/melonjs/Tile.html#overlaps"},"dRB8VE1aZutPHvaEqRc7I":{"uri":"/melonJS/docs/melonjs/Tile.html#setMinMax"},"wo8iw5xfWSqSA7W5UG09t":{"uri":"/melonJS/docs/melonjs/Tile.html#shift"},"jeYZqgo1wffZVp24dw5Nr":{"uri":"/melonJS/docs/melonjs/Tile.html#toPolygon"},"m_lL6JkUtJ5dVntfMEEhd":{"uri":"/melonJS/docs/melonjs/Tile.html#translate"},"an15Ig-4HGzfEfn3WHikr":{"uri":"/melonJS/docs/melonjs/Tile.html#update"},"Yoo2RSZddfNtEhJSaxUGp":{"uri":"/melonJS/docs/melonjs/Timer_.html"},"H-taXBdElcP_6qaJpc4Al":{"uri":"/melonJS/docs/melonjs/Timer_.html#fps"},"5__Ptjw7pn89Ak6jrvVM1":{"uri":"/melonJS/docs/melonjs/Timer_.html#interpolation"},"Df7jCGTe4Q8BOZD1wOkfa":{"uri":"/melonJS/docs/melonjs/Timer_.html#maxfps"},"amxBW0PGnb5Rg3MfYktOp":{"uri":"/melonJS/docs/melonjs/Timer_.html#tick"},"EZ5NhuHpeUJAhtNdCmsMX":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearInterval"},"THdp_mvr-f9kCYMTUtbLb":{"uri":"/melonJS/docs/melonjs/Timer_.html#clearTimeout"},"PZxZIOW5dcQzupl4MZ8Kw":{"uri":"/melonJS/docs/melonjs/Timer_.html#getDelta"},"tUEX4FxieFO4TIA55X5Uv":{"uri":"/melonJS/docs/melonjs/Timer_.html#getTime"},"m4NZZBs2FN9ryyikxX8F3":{"uri":"/melonJS/docs/melonjs/Timer_.html#setInterval"},"yfz2xPSzh3WOe2vl09CWh":{"uri":"/melonJS/docs/melonjs/Timer_.html#setTimeout"},"8_-rnkpII7fMCEiDDQnjs":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html"},"K6zDs4eRE81HhPeOvrSx7":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#canRender"},"yFs8gqKQ79Y3jMHyQSVdd":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#constructor"},"MjJWF4CUtK_J9keOKYj7D":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTile"},"wg_nN-fVUi0wNBvbrPNLc":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#drawTileLayer"},"6XN7Z9leAvFl4eoP49vDu":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#getBounds"},"nSYs3qlUqS5H0oJUlNtrb":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#pixelToTileCoords"},"pD8rdwCt1rOgkVYA1iEdS":{"uri":"/melonJS/docs/melonjs/TMXHexagonalRenderer.html#tileToPixelCoords"},"FwjcBdEi9PLEBtMCFvg3f":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html"},"e6BGAbyhlJU5Yhz5iOj9-":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#canRender"},"5vweYbBLTZmpbVjuTFMU9":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#constructor"},"24y8DWUMm_6QNY4BsM2fI":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTile"},"6VviVEoe1queiy8ZC-aXE":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#drawTileLayer"},"0y3bElwZj6SnrnnWYDk-3":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#getBounds"},"luYDT7qFOcPzdcZkUTvHC":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#pixelToTileCoords"},"zMMJhcndu2ZON2XD6CaMm":{"uri":"/melonJS/docs/melonjs/TMXIsometricRenderer.html#tileToPixelCoords"},"1AI_roSEBj4ny31J1-fL7":{"uri":"/melonJS/docs/melonjs/TMXLayer.html"},"xrqcJwCGnTSkaXuSjoTME":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alpha"},"M1JrUNnmCowiIfGLcvTLk":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#alwaysUpdate"},"SBUz-FGEB9yE8t774Duy0":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#ancestor"},"M20OtWg92yudhFWqE3CnV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#anchorPoint"},"xGHhoc9n-qWlxO-wXmx9g":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#animatedTilesets"},"fuiL7xAoWgzOZxhO7kKMJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#autoTransform"},"iTsKosbBRy9rXWjFrmoXp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#blendMode"},"dJaXJ8VzinCSWhCMH5jJw":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#body"},"ul-VCsHiZbxT681EMhM48":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#bottom"},"-7xlg4LLTxFg_G55A9zD4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerX"},"O354aY43vbqPSdHhVVp6d":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerY"},"iXxM8DRv8QRDQ9Qeck7tS":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#class"},"lfm_QJSIKlvVboRuAd7Ye":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#currentTransform"},"bccmw_m02BU67imRYQ1kQ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#depth"},"JUKo9AKns2Vnx8XkZoiwY":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#floating"},"EGUl5rchcZBVVyYiS2OIf":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#GUID"},"06YsJu-NGZYFUzPCMZXej":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#height"},"Qvpmt3iLHoKuKoMPcE_6m":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#inViewport"},"D3ilBKQZY0cni80uLKAlU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isAnimated"},"3xVISsNM50_l-Ivhb_X2n":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isDirty"},"SBrEsr0FgKehdssemkhin":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedX"},"ZvlN0-QPkjKxmx2wzJnF0":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFlippedY"},"MA3E1FMfgPvT4oNUTFmtD":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFloating"},"f4vdQL30KThkv0SqPbdqL":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isKinematic"},"KGfgz8ZO1QAm3RYVJ0tZs":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isPersistent"},"QYBo8ZxkF_oMTclxoALQY":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#left"},"ARvL6iKEpuZwiVVn--gJU":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#mask"},"cRHZ1ysc-WfJHFySsMtyH":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#name"},"T4yFKc5y9z-67AN_3WnWp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onVisibilityChange"},"IhRf1AOwMRHlJE4gZHOUA":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#points"},"AZBnnD80dAN0Ry9MGNEfl":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#pos"},"RVc0NasWvQDiuoZmL4Lep":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#renderorder"},"GkdXaVQ5BFRP8ZHE5BUHC":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#right"},"MM5ifpojRFOP1IUhXhmPP":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shader"},"KxrYPs_Fe2lOZ5mKKsu0g":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tilesets"},"pzXe6ZusBjlM5avlHViZv":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#tint"},"ixL-LpM5DsF0Fj0JJ32Zl":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#top"},"-1g8Vlw-_t5KDcHXzLloI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#type"},"cGmgBOCoVmDWpuHxbxE0T":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateWhenPaused"},"qnM7P1lwSR09Q4BF17nk0":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#width"},"0kBoAT4BqoHkbCxa6PtV5":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#x"},"1h2eUeXr3wqU6PmtlyvVY":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#y"},"3moBiUWUJ7JenBsookk-7":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#angleTo"},"dVV2pI7Yl_uSlScOgo8gT":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#cellAt"},"xtortotSwVzZrhBYiJ7Lb":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#centerOn"},"2qJOa1CXhGPqj8lPzpcC6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clearTile"},"VtSTSv4eOq1i_yGgKYN2w":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#clone"},"vl_gfsoZidsZ_kkm9t1W-":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#constructor"},"LES965Knr_PNAzWEeqbJt":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#contains"},"GmtiWxuCpjP0RIg20GMgF":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#copy"},"MaOvATE-QptoAY6qhANlC":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#distanceTo"},"t5KaLUpt5n7KxKmwFfbVu":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#draw"},"bNt4bWcIzkleJkiurPTmB":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#equals"},"vZFd_uecMCrUlIPe5fBBY":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipX"},"mq97jELDi8uTTls35Goqp":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#flipY"},"Nm7jD8FbSXnBXGgVsbP0n":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getAbsolutePosition"},"aLMlNRhi6_dmdrX47jex6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getBounds"},"NtR0yeSglBeNXszcmwN-B":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getIndices"},"OX7ynzgP-yRRscHFfz0AV":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getOpacity"},"g60chtvV3ZG5Y-u0irOSd":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getRenderer"},"m9MGxPaXrWK0jbwUopPHf":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTile"},"7p_E5HDECsdhersiu87rk":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileById"},"hCTD63wsvlLShqRViUuRu":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#getTileId"},"2GIiGpL_lOiTxVnWM5hL5":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isConvex"},"HjFov2ffnq6Wn9rn4-iNI":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#isFinite"},"fSt04rh7H_hOd1Aw9lZa4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#lookAt"},"P-Jl1yUgVu5zkHRlqJbrJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onCollision"},"siL_mwNYMsZVRi14gIv84":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onDestroyEvent"},"bSVz91Rti51QTSc81lwf0":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#overlaps"},"mM7V0Sw829X8WouCMRZFw":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#postDraw"},"4PCJpd42-xMyQphTGltS8":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#preDraw"},"dwFenZ3GyvyhMwf6VFE2z":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#recalc"},"KnGLWIRSedkJT_izDvvSK":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#resize"},"2jIsldRVqdHN3njG4t6ud":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#rotate"},"McDydz7l5pE_7pJuuR4tc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scale"},"Mkh3uo8M30k1BHJoip15G":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#scaleV"},"HQ8lBa95nLaJ7OdtcGqk4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setOpacity"},"2ocDlDSg72zLctAvYBtov":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setRenderer"},"FHI3yrzy2Jf5I3Pjcif4S":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setShape"},"zDgPLySkYy64ra2bmkJRi":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setTile"},"x_71DHDmv3kb9wjPWbqNC":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#setVertices"},"aINfy76Yy7A8ijOiOuVlc":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#shift"},"Fuj8ED3pAzxakyYssshq6":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#to2d"},"-29pAMCpU0sgMMYVmSyi4":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toIso"},"9iTZBfoG3Pw9RwdzxmB5s":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#toPolygon"},"mmdaX2dwYvJ54XDS7zYBO":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#transform"},"p_IlEgjpm_3bfCot6wEby":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#translate"},"LzXqoi2x9vkLFpTlHU6aR":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#union"},"UP_Ga84Sm7Jk23t0NEh4t":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#update"},"Iwa9YISW-hxkrkI8Z1EZs":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#updateBounds"},"fBZMmoEN7wG_LxS-BDQiJ":{"uri":"/melonJS/docs/melonjs/TMXLayer.html#onAnchorUpdate"},"MvfinAId3ReSErmZdNsCP":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html"},"o_VU9abDPgl8z3__xAhvm":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#canRender"},"_j5QF5Im1MV4Fg04r1oNo":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#constructor"},"2q54Y79rIIAOGjc1W8J4S":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTile"},"lOAOXhWmDSo02JyXeQHUR":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#drawTileLayer"},"3brneT1r-YHAnh7xRepRD":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#getBounds"},"ZPBHdStKz7CqGkbtALXH3":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#pixelToTileCoords"},"9Mw0ajwhxu2qF5cJ8XVRO":{"uri":"/melonJS/docs/melonjs/TMXOrthogonalRenderer.html#tileToPixelCoords"},"y3kMLK0EhDuA8E4wlcTsf":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html"},"DKoGhxG_-_TXvPd2GG15I":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#canRender"},"1r9J1U213bKLsEMFTr5HF":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#constructor"},"zMnF2qeYCmCyLqHkL96CL":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTile"},"d6ccKINmiaoravi_Rfazq":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#drawTileLayer"},"Ysh7ut1Y6_DyOJJEvZE4g":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#getBounds"},"Hk2jgp_zqQM_qwIgS8amP":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#pixelToTileCoords"},"42SZewIg2s7n_ppIptht7":{"uri":"/melonJS/docs/melonjs/TMXRenderer.html#tileToPixelCoords"},"B4Y2R1kbo9UDPrUKxxDLT":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html"},"utsJYW4j8RNNhmWU96l4H":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#canRender"},"GiFcSRaEUqNqoSfUNqxKx":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#constructor"},"QMsKXx0XlWGLVB4FZ9Aco":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTile"},"bilq63dkaNgdQrc4N9m-4":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#drawTileLayer"},"FVR_dDGm2SfnzTrARr2yn":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#getBounds"},"ahnH5Fh6rb0tlsDQQvIvF":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#pixelToTileCoords"},"yTKf5mwlQoDmRDzV540Su":{"uri":"/melonJS/docs/melonjs/TMXStaggeredRenderer.html#tileToPixelCoords"},"-Gb6nwpjSsmmi_Bf4LDyS":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html"},"thBtQOMQwmHFEJArZkPGP":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#class"},"rfPbicWokktxcY3NqL80T":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#cols"},"vOyXmh1T3n08Awt6yOqKg":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#infinite"},"0xVaFx-UCx_yapxviIH1s":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#name"},"l7WTI7Ibzdaw04tzdqTAM":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#orientation"},"-1w3TSqOfQ-MPLq6HtiN1":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#renderorder"},"4VIzGNuaEy0Me4zT3_dOB":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#rows"},"ulCr45ui4OsqvRQiWSHV0":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tiledversion"},"dQgN1Rj02jeFEB5jA5gEh":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tileheight"},"WOhkqGJfdeZlIGR2Wom_U":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#tilewidth"},"JLCcaiUu_aZp0XvS-pnRe":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#version"},"NGWpVxJyqwHwLh5tberUw":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#addTo"},"ciQCFYjgS1R7alRg8U-X6":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#constructor"},"RKHvWQfu_7x2HYRzD5ZTG":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#destroy"},"rzf-HvLM2WaS6Wkp8HmSf":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getBounds"},"ci5RRb1kOdrqf49TCitz4":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getLayers"},"3HqsBRmeZa8Dqd2YqTokV":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getObjects"},"gSo2QOVY8CYcL0JGr_j4x":{"uri":"/melonJS/docs/melonjs/TMXTileMap.html#getRenderer"},"x1-2jUaF5USUoBKJuEvRC":{"uri":"/melonJS/docs/melonjs/TMXTileset.html"},"9v1GvF3iPNwWT9NCofxlM":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#class"},"Z3dvzFPowlyIPMo2Tj_z5":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isAnimated"},"He3-G8N-VufZJ6kYtdL0W":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#isCollection"},"qonnaJFrIgin64ObiDRG1":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#_lastUpdate"},"nsxNXRpS0HKkhSK42CuwO":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#animations"},"gXCzSpF1Ny-NAkNZQXn39":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#constructor"},"IdhBe22uoRdahWK9AieVJ":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#contains"},"9uR9QmEeo5-Pqjk0S0oJD":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileImage"},"E_Pt_odafCCVQlEp6zeDV":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getTileProperties"},"dR1OrB4Azwb5egMtnPIYH":{"uri":"/melonJS/docs/melonjs/TMXTileset.html#getViewTileId"},"dEv6_VNWDTMRaD5ePY2bn":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html"},"MvjsuzL_ZZfQ_Md3OP62G":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#add"},"9sM0uSIAHAmAmljIjCQzZ":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByGid"},"2WSVsi3acLZ5Miml20QLa":{"uri":"/melonJS/docs/melonjs/TMXTilesetGroup.html#getTilesetByIndex"},"rhV2YT7MkqiTDKeM1x0Xw":{"uri":"/melonJS/docs/melonjs/Trigger.html"},"umNKn1Y9jXEwo7H1SI1fX":{"uri":"/melonJS/docs/melonjs/Trigger.html#alpha"},"ZipBHUwRXdNyBEdXHeTW8":{"uri":"/melonJS/docs/melonjs/Trigger.html#alwaysUpdate"},"f_qJ_5WdBGXwtuc893f72":{"uri":"/melonJS/docs/melonjs/Trigger.html#ancestor"},"6nY0gnRL65LXTZdsRuV-x":{"uri":"/melonJS/docs/melonjs/Trigger.html#anchorPoint"},"7EQDxS57TO_4DID7CtfF3":{"uri":"/melonJS/docs/melonjs/Trigger.html#autoTransform"},"nFJupAZ20fC6w65M_jILW":{"uri":"/melonJS/docs/melonjs/Trigger.html#blendMode"},"4ZZCf7d5nGu-L86MNyCuf":{"uri":"/melonJS/docs/melonjs/Trigger.html#body"},"-18xdGAVE-i0jIWqp7E3k":{"uri":"/melonJS/docs/melonjs/Trigger.html#bottom"},"t3yVwii0RrPdf9S_xqmBK":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerX"},"4cg119p_EswimFGoz5zrC":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerY"},"79nhOz7bVUG5McvAZUvYW":{"uri":"/melonJS/docs/melonjs/Trigger.html#currentTransform"},"akCFY0k3kKooJQes3Zp1Y":{"uri":"/melonJS/docs/melonjs/Trigger.html#depth"},"1XuyqHI254YKN2eCxYbcU":{"uri":"/melonJS/docs/melonjs/Trigger.html#floating"},"5Uk13f2yO7CY4yQIB6hVU":{"uri":"/melonJS/docs/melonjs/Trigger.html#GUID"},"_Q_hrcc1diPS0o34x1kzQ":{"uri":"/melonJS/docs/melonjs/Trigger.html#height"},"41SLX-DtpPLwCaQwl0c_6":{"uri":"/melonJS/docs/melonjs/Trigger.html#inViewport"},"lvlostRUJh9uSP7UoguqK":{"uri":"/melonJS/docs/melonjs/Trigger.html#isDirty"},"TiwFmQwBN_GWUivqSlqqc":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedX"},"LKWV7kOFcr-37xPPHL-_P":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFlippedY"},"u5JvA7nYNrQuAwUuHnvHE":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFloating"},"iMT7g4eL1NDiYo7PAcP87":{"uri":"/melonJS/docs/melonjs/Trigger.html#isKinematic"},"rrPDMmp6bqRiAZCFL-tm1":{"uri":"/melonJS/docs/melonjs/Trigger.html#isPersistent"},"aHvYX2d8KwNW7qVUFdpZw":{"uri":"/melonJS/docs/melonjs/Trigger.html#left"},"Gn1pbQplPMMh8c3Y7OZp2":{"uri":"/melonJS/docs/melonjs/Trigger.html#mask"},"34taduBLfgMcWBDXtCd7v":{"uri":"/melonJS/docs/melonjs/Trigger.html#name"},"JKhgziWtSnsTspSg7mtLR":{"uri":"/melonJS/docs/melonjs/Trigger.html#onVisibilityChange"},"VCeZHGx5nyql4Ca3NlMR7":{"uri":"/melonJS/docs/melonjs/Trigger.html#points"},"pgEYtSdpeAeUES0gQ5iVb":{"uri":"/melonJS/docs/melonjs/Trigger.html#pos"},"EIgB_XAg53-id6zsglPQs":{"uri":"/melonJS/docs/melonjs/Trigger.html#right"},"-oora0Zgskgjm76LXGTp2":{"uri":"/melonJS/docs/melonjs/Trigger.html#shader"},"axsO1J9usB8H7V1n9kS0x":{"uri":"/melonJS/docs/melonjs/Trigger.html#tint"},"6Wwc9GM_bbP-dzqkqd_fk":{"uri":"/melonJS/docs/melonjs/Trigger.html#top"},"kRjPwJ7263BfhcdYEt7Mz":{"uri":"/melonJS/docs/melonjs/Trigger.html#type"},"19vJIJqfAXl950QeEFdnl":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateWhenPaused"},"c8eJkekjzhBItycB8FLlJ":{"uri":"/melonJS/docs/melonjs/Trigger.html#width"},"JWIJEiY1qwmrmR8vBjHaf":{"uri":"/melonJS/docs/melonjs/Trigger.html#angleTo"},"PjcmuClK8YRv3ZfcZ2vzb":{"uri":"/melonJS/docs/melonjs/Trigger.html#centerOn"},"eovHpe8LW0b8rBrRfRkrv":{"uri":"/melonJS/docs/melonjs/Trigger.html#clone"},"OPylSpwVh-PMyoCaRXijf":{"uri":"/melonJS/docs/melonjs/Trigger.html#constructor"},"lQOY0dlw6ABgVTCXYN24g":{"uri":"/melonJS/docs/melonjs/Trigger.html#contains"},"qEv4GRBvPteOX4NyEKPjS":{"uri":"/melonJS/docs/melonjs/Trigger.html#copy"},"92gf5hHF98fu7j5lhYzIi":{"uri":"/melonJS/docs/melonjs/Trigger.html#distanceTo"},"0G_fs_qxxV4iPY6zIX374":{"uri":"/melonJS/docs/melonjs/Trigger.html#draw"},"haoSA5Nb19f3ZRqNqhvKx":{"uri":"/melonJS/docs/melonjs/Trigger.html#equals"},"XuOmDPUmVbdYVv7wOvhDY":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipX"},"mfhWjlDKSMtSpq2wAH4z2":{"uri":"/melonJS/docs/melonjs/Trigger.html#flipY"},"2ihAD4cXwbVa0bgJ6DoHf":{"uri":"/melonJS/docs/melonjs/Trigger.html#getAbsolutePosition"},"2xZ1-66tjaKRfmluUsnyl":{"uri":"/melonJS/docs/melonjs/Trigger.html#getBounds"},"EY8vpr3CBwb4iL_uvFJoE":{"uri":"/melonJS/docs/melonjs/Trigger.html#getIndices"},"0vPdQvrGIFLw3YZMWebXH":{"uri":"/melonJS/docs/melonjs/Trigger.html#getOpacity"},"sRNh2ZzJCohEGeRBSszmw":{"uri":"/melonJS/docs/melonjs/Trigger.html#isConvex"},"sxBUFGBTfSdQTFWL5GEwp":{"uri":"/melonJS/docs/melonjs/Trigger.html#isFinite"},"PnnUtN_cFIUffToi4tlBL":{"uri":"/melonJS/docs/melonjs/Trigger.html#lookAt"},"d1yqMnNIpAzHLDcmO4sge":{"uri":"/melonJS/docs/melonjs/Trigger.html#onCollision"},"LFetgj8nssrhcuqADA9Fl":{"uri":"/melonJS/docs/melonjs/Trigger.html#onDestroyEvent"},"TPlggor8uHwE0dp61M1oT":{"uri":"/melonJS/docs/melonjs/Trigger.html#overlaps"},"kbXYVfVVW9lXFrNadFuAd":{"uri":"/melonJS/docs/melonjs/Trigger.html#postDraw"},"kk54_zPohyJ0NuHqOZutr":{"uri":"/melonJS/docs/melonjs/Trigger.html#preDraw"},"rfrHXjZ7yxmbh9EWjat_h":{"uri":"/melonJS/docs/melonjs/Trigger.html#recalc"},"w_p1v4ef0_0YKNtMQTkG4":{"uri":"/melonJS/docs/melonjs/Trigger.html#resize"},"tKDCZnl1c0pKip9qRAxXS":{"uri":"/melonJS/docs/melonjs/Trigger.html#rotate"},"AhWY1zyRY-cYK-SurADJM":{"uri":"/melonJS/docs/melonjs/Trigger.html#scale"},"2OTBho0lquj1pyztqROi7":{"uri":"/melonJS/docs/melonjs/Trigger.html#scaleV"},"-I8LpMw9U2l9xRN6p7qx8":{"uri":"/melonJS/docs/melonjs/Trigger.html#setOpacity"},"raJ9giiiNLyo4MY9K0mdE":{"uri":"/melonJS/docs/melonjs/Trigger.html#setShape"},"Z2QxsfxmMXpv444_0fvDO":{"uri":"/melonJS/docs/melonjs/Trigger.html#setVertices"},"mqxXJ-GswLN5lyjs789YP":{"uri":"/melonJS/docs/melonjs/Trigger.html#shift"},"HPBus_S8Vj0ZjNotml3N5":{"uri":"/melonJS/docs/melonjs/Trigger.html#to2d"},"U9ulgSFyicRpdx8psyXzP":{"uri":"/melonJS/docs/melonjs/Trigger.html#toIso"},"Lst1odSSbmeRBO6bpdafu":{"uri":"/melonJS/docs/melonjs/Trigger.html#toPolygon"},"o7RjZZqmq2pBjSolyrj52":{"uri":"/melonJS/docs/melonjs/Trigger.html#transform"},"478j4RXF5-t94VaKN6DX5":{"uri":"/melonJS/docs/melonjs/Trigger.html#translate"},"Itbkw-Yj_RX1RydwJ8dXQ":{"uri":"/melonJS/docs/melonjs/Trigger.html#union"},"Uyog-I73eJXNJG4H96UuW":{"uri":"/melonJS/docs/melonjs/Trigger.html#update"},"53ntECR-iL4egzGC2UWHd":{"uri":"/melonJS/docs/melonjs/Trigger.html#updateBounds"},"p3rHROyZlEViiPOkTGPM-":{"uri":"/melonJS/docs/melonjs/Trigger.html#triggerEvent"},"AGBKxMGoaFJ31uFmzVJNF":{"uri":"/melonJS/docs/melonjs/Trigger.html#onAnchorUpdate"},"HVL8mhBMqbqYbJPn_M_kt":{"uri":"/melonJS/docs/melonjs/Tween.html"},"Uulp-VPAL8vcKnxRBxxC3":{"uri":"/melonJS/docs/melonjs/Tween/Easing.html"},"oA8bV6pwlJ01WT24vPNOv":{"uri":"/melonJS/docs/melonjs/Tween/Interpolation.html"},"d6J0PvIUYSguGiI9lYf5h":{"uri":"/melonJS/docs/melonjs/Tween.html#chain"},"reGpnM4nGxhxqpycmuaFZ":{"uri":"/melonJS/docs/melonjs/Tween.html#constructor"},"885k6BLCecIoXAfTiGsyz":{"uri":"/melonJS/docs/melonjs/Tween.html#delay"},"sdqr5KftWDrW9wBP2c3On":{"uri":"/melonJS/docs/melonjs/Tween.html#easing"},"HaLp-I413LdyPOLlvo5zR":{"uri":"/melonJS/docs/melonjs/Tween.html#interpolation"},"bzJSPa88CHUU5uNT0NzSH":{"uri":"/melonJS/docs/melonjs/Tween.html#onComplete"},"v-oDFEHVl-EVCvBQLq9GN":{"uri":"/melonJS/docs/melonjs/Tween.html#onStart"},"XcExEwEwtulJ-GOdSCTJP":{"uri":"/melonJS/docs/melonjs/Tween.html#onUpdate"},"WNOpxAIBZC2ZK_ADMg6Ul":{"uri":"/melonJS/docs/melonjs/Tween.html#repeat"},"ARMJprbqAqkFQLEe6Mafn":{"uri":"/melonJS/docs/melonjs/Tween.html#start"},"K08DT4rKbBeCNh9nirOjT":{"uri":"/melonJS/docs/melonjs/Tween.html#stop"},"GJGgqEcEeMXL6sA2f9Plw":{"uri":"/melonJS/docs/melonjs/Tween.html#to"},"cM5fKuX15HSRuGymx2_D8":{"uri":"/melonJS/docs/melonjs/Tween.html#yoyo"},"3alVHKazgtxGYlvbDdj5U":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html"},"ep-YSuo3IA1CbohqWPMBX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alpha"},"27WEyHK6feVh5v4HiJdIU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#alwaysUpdate"},"W-bbvj6W0aw67zu2ucClV":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#ancestor"},"m97uGo3sIN61baOO8Dz8A":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#anchorPoint"},"he6wGV1rv0SCNsUru-qsF":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoDepth"},"RA7oFScTUg3faEUyJEdpC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoSort"},"cjfNF0g1QQ-QQYnh4kjVL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#autoTransform"},"zmEjUstG-3zmDGhNQ6G8s":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#backgroundColor"},"FOkWzFw7ypUf9c7HJ8fAC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#blendMode"},"_k3uI5IEyET7MdSFyeAFB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#body"},"-t3rwdE5UdfAVhjZhqoRu":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#bottom"},"d1Yaqsp9YAI9fXphZvJiz":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerX"},"rX_A-m0u8mxckJqccFJo5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerY"},"jG96Ri3TfiMlBdIEhtTcD":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clipping"},"47n6Jj7VP5JsPQ4fvKg-L":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#currentTransform"},"A9RBYtq7sYu5pts3gIUTr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#depth"},"NbunjlBjomfoKUxB3kt1z":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#enableChildBoundsUpdate"},"TTAH0r1rYyEY1p8vUEd6l":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#floating"},"D9vQI-XTGmGZZ07YJUSWC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#GUID"},"EYAHVkn0mtBaVUiReC5v0":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#height"},"qPMl9rIwJNFo5VruS1tRO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#holdThreshold"},"X9PZ-_PzMwP503mHB1V2C":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hover"},"1Vlvq-2kaxtfRqLeRxAGj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#inViewport"},"ZSchNRgouF0lc7f0hNLPi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isClickable"},"uJLsEofTesF7dQWqIt4Ly":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDirty"},"IXXp0mGyY0INf5onnESse":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isDraggable"},"WTtoCRAwMg9wbHgHIiBGe":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedX"},"pmrWDi6TJK0NP4EqHyFaw":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFlippedY"},"9yZQJESn9bFGpX4bqB8Bi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFloating"},"Y95g7rXvHTBlW0yf2hkti":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isHoldable"},"oYp5csIUM-jFeEnvR6KAL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isKinematic"},"4m0UpncYjOaFAcXxIcHRl":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isPersistent"},"9b5Wk90v814LFlvrM2Yh4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#left"},"6FwP-dsTthXkAXqbNLZWI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#mask"},"6lPXfrRLW4OED1mWKbhVv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#name"},"wwGFgaHkr73CpxY2oZ-CA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onVisibilityChange"},"oydjKVMowP4WPlrxCSOUu":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#points"},"O-Sp80RWg132STO4ivrcI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#pos"},"qsKtX9hi05YEbXzJfCYhL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#released"},"jelFNJk7XwHsGW36HmnxJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#right"},"ISbIqvP6EuxA7DR_kfjOA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#root"},"R4xX1NtnOUPuzXY7rIoU5":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shader"},"7_KxvjgAjo9Ys6xEV6upl":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sortOn"},"q2_ntmeQRfeCOmMipTm0t":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#tint"},"tZVSSY7cy4Jucfzgqfi1M":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#top"},"hrCu0eQ-ex-Ghtgo7tGSs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#type"},"vEaJK0Afa2E1uapAkTAsU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateWhenPaused"},"Muxfld45Q8p3GMmwjx0Ok":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#width"},"hwAY-MdAuX11NY_wtkCFt":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChild"},"a0RqOi1QeqGEMUQq6hp5i":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#addChildAt"},"Rh-3QESQttFxtOiZAVpk0":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#angleTo"},"EqMsA8AobnGJwdo2lnOnf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#centerOn"},"_M2d3tY5MM6Btz8TOtwEJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#clone"},"vthBTZruus3DaBMZNSI3V":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#constructor"},"HKBFVeZ6oSxc9-vySm9ED":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#contains"},"h50xq47BMTVT6EvIPPXHi":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#copy"},"b4a24e8oFQ4MrVXdRaDT_":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#distanceTo"},"BZDWJmaHMAbCgFGifcs70":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#equals"},"2NjtS97XYdISCIIGkmoyU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipX"},"nwGe31FucBP1WjdJhILCn":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#flipY"},"Sq3KEOod_RsQADKe6K7bT":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#forEach"},"j_Q8bvoEyyEe124xjuyYC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getAbsolutePosition"},"eEQHW85ijtZROcJPc1PCD":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getBounds"},"3xwoAl_5Q7dz_shm8wTxA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildAt"},"i-yJOjBNegXK7UvbWSXkM":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByGUID"},"fM8hmuCjcJ-wM5zZb9KzX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByName"},"Kljxc1ZmbGdrEjRriFPdG":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByProp"},"IkTe3TSVaXu5E80CwUX9D":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildByType"},"5KhGjvj52L4QKvoL0-PdP":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildIndex"},"a6SAvOQ9kZoZXP1FuT8IC":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getChildren"},"XPikvwmNottxQEuI0WXWf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getIndices"},"DhT9xTiBHssK9fgCG7_PO":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getNextChild"},"gqsRQ46Wlj0YaMzrWXngd":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getOpacity"},"NeKzn5J15SXlKFffcpsIS":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#getRootAncestor"},"UXM3P15kHXzImSzOjaYJR":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#hasChild"},"-P_o9AgHkkT6ye5MXjTVj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isAttachedToRoot"},"W5yDBc1K3hYsAsgK7MhZp":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isConvex"},"Pg2AWwd0UpFS92nbJs4Ts":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#isFinite"},"QaTrsSiNKRQi1Cy8kd1e_":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#lookAt"},"CsHcQC7ZEMZQIvscggUBz":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveDown"},"PdcI5Hk71982ZU1eOFArJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToBottom"},"cltviG1URDPb4vJtpRINE":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveToTop"},"8L5eSbB6ESSTYpbfhv-_X":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#moveUp"},"5vjB6ORlynpP02Fc6L3k3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onChildChange"},"vCoXqdx8jtmHL04QkSiRJ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onClick"},"V9Vh4YGs4a_KUnTqDlX2H":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onCollision"},"ZKqBymnmHplW6718f2Ge8":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onDestroyEvent"},"FiEwYORtoR42WIICrxhD3":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onHold"},"wOHy8mqNOHhDErlFBf_uz":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onMove"},"2HGSAy-fDzeCi9vo4f6oZ":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOut"},"tndjC8smfiQ1nJNg4yA3R":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onOver"},"D2w9WLr79xibKI3oVX-Ad":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onRelease"},"Jzeg1ReAfwbKcmK1pht3E":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#overlaps"},"OyZ6qXhg14DQlKTbCsIzA":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#postDraw"},"reQOyMEWKMjhuKGwtlbWL":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#preDraw"},"_V64G0sfKYgQqYrt9PP1A":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#recalc"},"xyN8dXjD4N72wtWSahy1U":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChild"},"T525jA4z0q0wDLLk-8q2f":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#removeChildNow"},"NRpZJITFsEmFekIQtkKvX":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#reset"},"3GMBEOwY3_T4Y0786hxkv":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#resize"},"YTQk4EnB_cl13whSPDc5z":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#rotate"},"x61o1DA_WPnYxGOhn3b9K":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scale"},"oO7MuPuLSkh7l7sughSlK":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#scaleV"},"FSSA3Bx-NElWctVkyhDWU":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setChildsProperty"},"ckGqeSuo5E9C5e2JtkXaH":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setOpacity"},"viH5Ufhac1WJ9xtAV3Dw7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setShape"},"MXXWkIB8VBrLwuDNgH7n7":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#setVertices"},"2Fu9R2X3FvQFSfHRGLiDy":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#shift"},"Lo52zStMULLs1tvYsacKE":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#sort"},"JYFDMSKJf1bT6aVMAkT63":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#swapChildren"},"NZTbe4B5nPNL_tDf7VaJs":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#to2d"},"dPbo-2FlgL9kH5bYVqQZj":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toIso"},"nmjWepdBadfCQIMuYagCr":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#toPolygon"},"Sv63UssSfVGNFaxkzUBSP":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#transform"},"dLodxdMxpZnFD8rI0nPHf":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#translate"},"SrTSCrjSZCUf1dVJNWAlx":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#union"},"u61redKe0EseJemVn3E-l":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#updateBounds"},"8nOW9anV5CW4YsmfhI2UI":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#draw"},"aFa63bZjWdEqVGP4mdOV4":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#update"},"hs3EfMWjwHe2mLqH6RfpB":{"uri":"/melonJS/docs/melonjs/UIBaseElement.html#onAnchorUpdate"},"rWURTreC4avl10eQqPklP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html"},"0sFH_c_MIU40NhnGaaMHD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alpha"},"dMqLwIUxbbLWtThzp80Hh":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#alwaysUpdate"},"j3WPFhfYqyHiB6pWw5JF-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#ancestor"},"mqHzwaBN4ZXKs-uGg8sr2":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#anchorPoint"},"h5Lr2Z72WpGvKallk6C15":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationpause"},"URVnp6JJpDrDUj9CySkAl":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#animationspeed"},"PzTVtgTvZtOmU2XHQ3AaW":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#autoTransform"},"zQsWF0ltFfx-HAdPOiRS-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#blendMode"},"ttQYVr0BGPu0VGbhzoAz6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#body"},"-CwBsd-Deti01T-nxvMpC":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#bottom"},"hYT9gKs3dIzrkd8lZHLar":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerX"},"8MDRziiPk_zYAPuszecS-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerY"},"hXEXGnQn1TsuL3v_op9om":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#currentTransform"},"_9LmerxqJ2IFQ7XC8abtz":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#depth"},"JxWYL5xhKM7GyKo_3fAe8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#floating"},"xU4egMHabQSCmVZd-6AYU":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#GUID"},"L042Nf3x_dX4DH_I8o8tz":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#height"},"6hFQx-w_iC0lJSZhfZuPf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#holdThreshold"},"u0BvC7KBGserQUIS5hN3B":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#hover"},"W3R3jc0pRHcGxe9ebgbd4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#inViewport"},"BQkE5VEV5tdb1nCvNOg0I":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isClickable"},"qaMrT-LT8iioHT2TMkx1h":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isDirty"},"DOZM4ySmmAe2_YKFlR9ra":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedX"},"rRao7z3ognG5Ns8yKQkSB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlippedY"},"OHSPdEtTE3ZY_tclzPbKo":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFloating"},"0HdNfyKF6R9pWs9J-QxaA":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isHoldable"},"KAuiztbSNsJxFf0AL8qiu":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isKinematic"},"R5GhteZrGn9Af2c3ExW-v":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isPersistent"},"jzafGMQEo8N6v6HOFtT7b":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#left"},"VlobXaXqVLOrw2gWWeM5e":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#mask"},"PCl-1B9peUSmvCiVvIk14":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#name"},"R4TaYqtykuu9PSv-X0c08":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#offset"},"zlLxNQ4P-mlH54rF062XT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onVisibilityChange"},"vBoVYTuKB5C4iFw2g34Rv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#points"},"Pp2BOYg6vKMjX6UTBBKik":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#pos"},"IqHsAL_QHzJ7n8e_sRvKe":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#right"},"BFmm1pwUyrMgnA9y2obID":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shader"},"Camwx1JF5BDh5Xb0sdQLE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#source"},"jwyVIcBAnPyPamPTFe8dO":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#tint"},"gpxGQbZdFl950jvE54THC":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#top"},"JYIkwn3ddyPkCECIrEc68":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#type"},"JwgPvViyWXqO5Xborl3Bc":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateWhenPaused"},"plcaVV2l8nUDwaDV3luXT":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#width"},"K__wGXuBPWGgla73t2wW5":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#addAnimation"},"dix8ZROJ_oNd9U_-Y2Xzf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#angleTo"},"6Fcui6NGHPWfKze6lFpAp":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#centerOn"},"17lz47QTrMISgzSV_Hbqa":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#clone"},"wa42LtgMwkfM6Hq5-t6Ou":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#constructor"},"anoVA0ndA_qfcoZBdNnR5":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#contains"},"43Nl09Gysy2gjrJXnF0DD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#copy"},"I68NY2N3iTxfggDEFv6bF":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#distanceTo"},"NjATWbvF2vaiwFsFEeWk7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#equals"},"feB9k8xD5rPYl_WJWRd2X":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flicker"},"nQ0sTPK2LVWSI9rFlyqP7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipX"},"qWwf5Y8e7FxuWo_xl8PWE":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#flipY"},"uW842agCwGe5g_wG9MLKf":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getAbsolutePosition"},"zzoxRs-ITrNVEd8aYZGcJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getBounds"},"uBor1UMVl7rdy5pTt9goQ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getCurrentAnimationFrame"},"uR6BnX6vd6OV27oeXN02m":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getIndices"},"7ImihH1va1OmJ9lUfqT32":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#getOpacity"},"X5KzsD3lZinnhxjbKnzov":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isConvex"},"Z1rOLHPcn155id1RnuFig":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isCurrentAnimation"},"lH92EbTJP6eRKCNk5qz3R":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFinite"},"423dut-anDeLoSUu0ae3p":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#isFlickering"},"oWicV-iXq3Y9YbJs_S-wP":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#lookAt"},"4zjRQe0AZlCi00iGrHKem":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onClick"},"C96CS3vbWtiY-YgHlThUB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onCollision"},"PK8kJH6Md0t2eLq57TA3J":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onDestroyEvent"},"GDDGKncNIgdwZfK78kDZJ":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onHold"},"WIQUtwlkXKFqUB6RBcGZ3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOut"},"8uzXkcN3LkgXGqZ3HY0tu":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onOver"},"R79Pig38UTQ8v4CN9KAP6":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onRelease"},"3i-bsnRXalN3nNZDnW8dB":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#overlaps"},"0895jXBcSsGYu5AN9vFLv":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#postDraw"},"8-SD3Z558tQEIGK99QlG_":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#preDraw"},"Hy3gXaa70y2ks-N992PKU":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#recalc"},"B69VQM_fEOLExxbMgdpS8":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#resize"},"o5V3p2k9OK992sqoYMGJD":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#reverseAnimation"},"K_Yq8Hv0jP4o7OmUX9K2i":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#rotate"},"BQB0Y2OsTo6fVjFJAsE9D":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scale"},"WZ93N3698jRjRfwO6jGF3":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#scaleV"},"8BxjGYpWZqJ1LcK_Pe2RA":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setAnimationFrame"},"WHzxswCoaSvh3SYiI-TkR":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setCurrentAnimation"},"OlVZlclWC7zirH5yh6Rzt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setOpacity"},"8DzoKOh6FJ3H44YlLlGh-":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setRegion"},"KDJNggjpHzAoMUdlSwJCz":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setShape"},"PSjf7yONCMoZH_E4Sivis":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#setVertices"},"Fc7M01iOAJhY44vZ_ic87":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#shift"},"jFRh9y-JeW5OQvBo7XZ0W":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#to2d"},"B7wBghLALb_5bLa0K3Lgi":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toIso"},"B0DetAUU_U_fkEVwB28S4":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#toPolygon"},"NLjI2zhdT2ljSCBR-P43n":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#transform"},"7JbDdGbnhCQAYDUBuOdJY":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#translate"},"JmGa80xHQy5ddUP6bNbV7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#union"},"Y_zSKUgDToX4hMzE0mXy0":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#updateBounds"},"xRWxMwr7XoFDHy5AKuCU7":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#draw"},"sGUjO4DoUj-0zbk77DKZt":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#update"},"1jIqmP99W2MrBtdmWCHMd":{"uri":"/melonJS/docs/melonjs/UISpriteElement.html#onAnchorUpdate"},"2dwKTIxe7PU0uWYCKdGt4":{"uri":"/melonJS/docs/melonjs/UITextButton.html"},"1fgJ8Bp-XNYQJldp1muKT":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alpha"},"dwXeSmWlVDz9bLoguQsAF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#alwaysUpdate"},"Rm15RYlM3URTBMBmTRjO4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#ancestor"},"VNLzEXWl31TP9j7R9xQjd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#anchorPoint"},"XX-w8PPHd4AdMH4eErjMc":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoDepth"},"iWJi0u8o3Q-BbOX3K9211":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoSort"},"Lt939efoIS1XOZFNxfMf5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#autoTransform"},"Vy8ajTV4IaD5PRPy-s-kz":{"uri":"/melonJS/docs/melonjs/UITextButton.html#backgroundColor"},"exgr-qfp5tLczqP3YYt0D":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bindKey"},"3WsqePCnhw5CvUT-EEZLH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bitmapText"},"bPr_CE8WlsqcHzJO8jPiB":{"uri":"/melonJS/docs/melonjs/UITextButton.html#blendMode"},"Y-y4uhjyMI_DU2HautlVK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#body"},"mnjT1LFX9SvzSG7tN28A1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#borderStrokeColor"},"Vz-E14xmm3dvySCIauKmy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#bottom"},"IhpmxyEEIrXkasiOxeFJ_":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerX"},"yfDcFxntt5JSo-x8DTttd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerY"},"2mcJJgMSt_npC14nd7s9m":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clipping"},"EfXOSClq_MQePn9iQvZVs":{"uri":"/melonJS/docs/melonjs/UITextButton.html#currentTransform"},"0RN_KD0qPu47jfeLSFLhg":{"uri":"/melonJS/docs/melonjs/UITextButton.html#depth"},"8ai8WrqPt89xwyyfMHZZd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#enableChildBoundsUpdate"},"buEstEVk1wAoQz-ThKNjb":{"uri":"/melonJS/docs/melonjs/UITextButton.html#floating"},"4gwE9tR3BAFDpbv_5pUOP":{"uri":"/melonJS/docs/melonjs/UITextButton.html#GUID"},"b9Zpcg73ckV15IwwBrW_8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#height"},"HUDBW8YHAlwSXXW_SyCvh":{"uri":"/melonJS/docs/melonjs/UITextButton.html#holdThreshold"},"Z6Qc9roz9bQfZxbTlMRSy":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hover"},"6R2vcY1smhyPAftxTRiyP":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOffColor"},"l7xlbBm5ygJ2h-Pd1VUr4":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hoverOnColor"},"6K4_BZvFkZNBJUduL9LB3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#inViewport"},"s1W6s0LdKqE5ynCGlfQJI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isClickable"},"D7-30GL5XS0nZcbGKVlHk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDirty"},"BcYQeta9PzDnejMwqtUMX":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isDraggable"},"GuIBQN96MTIwbMkixOrwQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedX"},"m0aSgPMhC2J_K87PiikTC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFlippedY"},"aF0WZOpsmK3dAPpdoivBE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFloating"},"3v1LxPu3bP9bZ_lnTSM5h":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isHoldable"},"zyGH_JVbRyvIg0g8GxwjE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isKinematic"},"ck4tCGZMrf05fpQeIc7XU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isPersistent"},"Wd8Xbh-ji-DYCgGYIOniz":{"uri":"/melonJS/docs/melonjs/UITextButton.html#left"},"ytemxomJYeYWsXC606A7z":{"uri":"/melonJS/docs/melonjs/UITextButton.html#mask"},"vbSWbKf1FseEprvPU0AkS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#name"},"Akhhe5pLuPgHQHMjFUJbw":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onVisibilityChange"},"kg6EUGpoSDx3EKRGPAUcn":{"uri":"/melonJS/docs/melonjs/UITextButton.html#points"},"qKZltBpLFPg4Lc9BrcDlD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#pos"},"0T1T_BKRZVdMMWRDZFzrd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#released"},"KR1xFQw_MY0cTAJzJRWdU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#right"},"sbj_ir9FkTDP2R72cq9_K":{"uri":"/melonJS/docs/melonjs/UITextButton.html#root"},"COIF41BRVglPYfIAf92Wm":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shader"},"pLP8F2KBWt5yUcee0Cmaa":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sortOn"},"1eK4_VAP8csVRkFybI2GR":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textAlign"},"vxjn_ekvFq5K6_7luOTzH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#textBaseline"},"UocVIYDY-_3LGeamZe5G9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#tint"},"UxuB2nXSCl2L6BTILVKV7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#top"},"EGRyCeK0ZAnyJCiQKpD9D":{"uri":"/melonJS/docs/melonjs/UITextButton.html#type"},"APUNYbxTMzzJoj3yLsxN1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateWhenPaused"},"qhWB2yrUHKyOn3YV_iUO_":{"uri":"/melonJS/docs/melonjs/UITextButton.html#width"},"vM82ptcc5_Rv14uHcuviI":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChild"},"C7amdIrbMRr5Zxt5KUAvE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#addChildAt"},"Wr3D0UfopMQMAOdQbMgxK":{"uri":"/melonJS/docs/melonjs/UITextButton.html#angleTo"},"MsJDAxZgd-3QOx3ls20v9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#centerOn"},"KkQQdpXXSYNXEcRoQtG15":{"uri":"/melonJS/docs/melonjs/UITextButton.html#clone"},"9l03d3Er-gwxJtFhUW_8Q":{"uri":"/melonJS/docs/melonjs/UITextButton.html#constructor"},"jPmcufUl3UPXiSFeK5X3p":{"uri":"/melonJS/docs/melonjs/UITextButton.html#contains"},"vO43m_IHRIn8pHezT7_gJ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#copy"},"N_8Kd4HwTiLqWMcx8k__e":{"uri":"/melonJS/docs/melonjs/UITextButton.html#distanceTo"},"2eSBWR9gt5y0ejZDYmJu2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#equals"},"V08J74x2HhM2AWe6Tk9ua":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipX"},"ZnBT4EMBLlVv_ggk9-mZk":{"uri":"/melonJS/docs/melonjs/UITextButton.html#flipY"},"refnuyjF36XtJdm5JhRUF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#forEach"},"4pAJqRCv1VU-xXyG1KJn-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getAbsolutePosition"},"3cPyfgGMpnmpo4pVlbtap":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getBounds"},"FxqOboJVktZ5oFnaqGFWA":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildAt"},"sSHmEANNWq-LQVmDviix9":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByGUID"},"vxlhz1Fnbau-Ck33dBJrz":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByName"},"Tvx40i_ahd04h2g9AY2_S":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByProp"},"dOAIa28hvycMLix84s1FX":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildByType"},"9ctZNhdKHlypRRAbKfzIi":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildIndex"},"xACChW20GQN3AiHKQn24e":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getChildren"},"coN4SRjnGuZZQ3ykBWEkE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getIndices"},"adGVUuLFyZ188n-hjg7Qs":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getNextChild"},"cW8582wxe28bol8hfUKDo":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getOpacity"},"s3Ne3ajxye2sc0i9bM4W1":{"uri":"/melonJS/docs/melonjs/UITextButton.html#getRootAncestor"},"GINkeSvdfJ-GxiHkOMIna":{"uri":"/melonJS/docs/melonjs/UITextButton.html#hasChild"},"Pg0AfL_sNXRLn_OrM7yg2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isAttachedToRoot"},"P1hhRKolO341ZHKgnybiZ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isConvex"},"9QOfzDe_Bsu-APBCFa1dU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#isFinite"},"VKeZ6TpqEugxt_CZYxJz7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#lookAt"},"bFHfx_gfZLM016naq6mp5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveDown"},"jvWmImk77tI8SN35D7IFd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToBottom"},"zXG_fml3pz2dPkK-urteE":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveToTop"},"uIE0alOPzeuERR1jUGWWQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#moveUp"},"4tbH0UoWJNFneUni47Jy8":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onChildChange"},"xkkJmQqciKjgsJe4IW7ls":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onClick"},"kqMAJq-TiTaO4Ecz_woP-":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onCollision"},"Wjv9nonH01ZTYC9DDxAld":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onDestroyEvent"},"60ku_Lc2XpFr3f9zFNoms":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onHold"},"pjJIxcMIZfoukr9JMpdQv":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onMove"},"UxyJCuxJrXN0UWadg1Ioh":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOut"},"fLLdBS_Fw2PaonvA7IIIf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onOver"},"7X-KE4HZ40svAPCxvqWVq":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onRelease"},"djrwGh23ydLrlpULHnBL5":{"uri":"/melonJS/docs/melonjs/UITextButton.html#overlaps"},"KTskqotQL4GaccJeoE5nS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#postDraw"},"jntzUCILW0aDqda0DWoWf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#preDraw"},"k6wA7BSZFNTJ1oeWKaVoS":{"uri":"/melonJS/docs/melonjs/UITextButton.html#recalc"},"sEcQf2jim4oKXfGMucrO7":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChild"},"UrE6sh-SAmazlD7PuFJpr":{"uri":"/melonJS/docs/melonjs/UITextButton.html#removeChildNow"},"cM10ETBU13kpDQNBOMSNH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#reset"},"yvxfeCzlXacrJ780n7p3P":{"uri":"/melonJS/docs/melonjs/UITextButton.html#resize"},"LFCegImjghKVvf2EsKwLd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#rotate"},"gG4_UvflOErPuwsB2OxH_":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scale"},"VgBIV5WFyuvMiNSUprXHU":{"uri":"/melonJS/docs/melonjs/UITextButton.html#scaleV"},"yJvpp3bK1XEpxp24BpZyH":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setChildsProperty"},"DsuapwOqF-H_gfG-P3pOn":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setOpacity"},"Ayf4edCjphbM5UdOzMY5K":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setShape"},"h6u6K9WZRJxYAH3MqIOW3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#setVertices"},"vklv6UXyNMPO2s6uqI4Qf":{"uri":"/melonJS/docs/melonjs/UITextButton.html#shift"},"mprKzIai_Yl_q1VLertN3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#sort"},"8Y5dZNP63h5LXd6JOCG56":{"uri":"/melonJS/docs/melonjs/UITextButton.html#swapChildren"},"XL2DIYoyRV6ez2ZKRIVjd":{"uri":"/melonJS/docs/melonjs/UITextButton.html#to2d"},"jeEGEkwqTsHjDw43hBMfB":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toIso"},"2LcBaQopGiNOkWLncVuJC":{"uri":"/melonJS/docs/melonjs/UITextButton.html#toPolygon"},"rw3CT8YVxAnRYoL1tmHxQ":{"uri":"/melonJS/docs/melonjs/UITextButton.html#transform"},"VcBDQD4MZP9ZMu4ZvN4AD":{"uri":"/melonJS/docs/melonjs/UITextButton.html#translate"},"mqNQ2EwQG2KSyhEbAzXJR":{"uri":"/melonJS/docs/melonjs/UITextButton.html#union"},"2-USO0o-OmQdugh5WxvNF":{"uri":"/melonJS/docs/melonjs/UITextButton.html#updateBounds"},"kTnfu1xDWZS-efnIt2CZ2":{"uri":"/melonJS/docs/melonjs/UITextButton.html#draw"},"iMHjhCI17GQ1dF2bHL63l":{"uri":"/melonJS/docs/melonjs/UITextButton.html#update"},"P6bz0gjr2F9YJ1Z4RpXY3":{"uri":"/melonJS/docs/melonjs/UITextButton.html#onAnchorUpdate"},"xFa3_HEpgFrdG8fnGOOvT":{"uri":"/melonJS/docs/melonjs/Vector2d.html"},"Jq2wHuzO_8nhEH5LK3h4m":{"uri":"/melonJS/docs/melonjs/Vector2d.html#x"},"HyRDLvNZyFGnO_PbM-WUm":{"uri":"/melonJS/docs/melonjs/Vector2d.html#y"},"vLRgj0l-P14tamWOaslLk":{"uri":"/melonJS/docs/melonjs/Vector2d.html#abs"},"X-gYQRtpdjnOX1WmthC6T":{"uri":"/melonJS/docs/melonjs/Vector2d.html#add"},"fUKamGkFLROedNWgjfAVB":{"uri":"/melonJS/docs/melonjs/Vector2d.html#angle"},"Emd0cn00QH48Bbnctf5L4":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceil"},"VpDr1BJsoaj3vKeeHZC6t":{"uri":"/melonJS/docs/melonjs/Vector2d.html#ceilSelf"},"YOWrCZBj5aGmlvLzVFlwB":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clamp"},"63TUbutzmIgXo5bJg0Ptb":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clampSelf"},"zcXwabnXeLvTBe60hFzzG":{"uri":"/melonJS/docs/melonjs/Vector2d.html#clone"},"fPPF0FKQgYQsHUU7ClFcO":{"uri":"/melonJS/docs/melonjs/Vector2d.html#constructor"},"fOI0piQRFBezmSjtfhrot":{"uri":"/melonJS/docs/melonjs/Vector2d.html#copy"},"GTauDVtB73jPLzmi2BGHt":{"uri":"/melonJS/docs/melonjs/Vector2d.html#cross"},"wnhLzZFtX1Yy8GQAllNLg":{"uri":"/melonJS/docs/melonjs/Vector2d.html#distance"},"7tutpL6FCm-NQO2GPvxNH":{"uri":"/melonJS/docs/melonjs/Vector2d.html#div"},"6lxC-UXGUoGYUF9yKYX88":{"uri":"/melonJS/docs/melonjs/Vector2d.html#dot"},"cBjMRm7hRpUTlgQqoV-yF":{"uri":"/melonJS/docs/melonjs/Vector2d.html#equals"},"zLzQtJoqNzDjj_9ikRFp-":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floor"},"Nd3jfvHpc2pgBUV1e6b6i":{"uri":"/melonJS/docs/melonjs/Vector2d.html#floorSelf"},"YGRdytelcdgSifdPAhMob":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length"},"Fl3Gkw1fFTNi0SPCPknj5":{"uri":"/melonJS/docs/melonjs/Vector2d.html#length2"},"8IGRNGRfncv2d1IRtQRII":{"uri":"/melonJS/docs/melonjs/Vector2d.html#lerp"},"V7Os_efScvI394h01s-IR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#maxV"},"YJxwevgDAPs4wpt9zQqGx":{"uri":"/melonJS/docs/melonjs/Vector2d.html#minV"},"PgTOFE4aMyPOWKsXdWk-c":{"uri":"/melonJS/docs/melonjs/Vector2d.html#moveTowards"},"si65urrUlPe3Bki9o0ekk":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negate"},"SWSQsTGKZpuC6HBLrfVtk":{"uri":"/melonJS/docs/melonjs/Vector2d.html#negateSelf"},"L8LBsZLrugROS2UuBmXCR":{"uri":"/melonJS/docs/melonjs/Vector2d.html#normalize"},"7YIxoxlYjdGt-SJlKHEOa":{"uri":"/melonJS/docs/melonjs/Vector2d.html#perp"},"3rAuMt6op0JD5kvYzwqCZ":{"uri":"/melonJS/docs/melonjs/Vector2d.html#project"},"I7ThVsc17XEtVOXD1WKwI":{"uri":"/melonJS/docs/melonjs/Vector2d.html#projectN"},"aluEZS4ZoE-PUC_PEhIDs":{"uri":"/melonJS/docs/melonjs/Vector2d.html#rotate"},"jDAdTYy_XHiYXlkfdUzS4":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scale"},"vsKVy6UfFUIuORIftO5ot":{"uri":"/melonJS/docs/melonjs/Vector2d.html#scaleV"},"Nx0jOCLAxdq1yRQZ7kio8":{"uri":"/melonJS/docs/melonjs/Vector2d.html#set"},"rY5j_j0sm5GwHQpIjm0No":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setV"},"HrgQ8QrXlmoxTMaAELtd6":{"uri":"/melonJS/docs/melonjs/Vector2d.html#setZero"},"vx9nAhVINW3bpLT2_3rb-":{"uri":"/melonJS/docs/melonjs/Vector2d.html#sub"},"v9ehaNEc6wzishMTPlB_p":{"uri":"/melonJS/docs/melonjs/Vector2d.html#to2d"},"SozRks2HSoyulP-OWIQts":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toIso"},"4msRZo25FZU-uUI4JUqBY":{"uri":"/melonJS/docs/melonjs/Vector2d.html#toString"},"DMkpP-EBwrBBe-hn_tBs8":{"uri":"/melonJS/docs/melonjs/Vector3d.html"},"MwLOArNsIUnme5SboIjUH":{"uri":"/melonJS/docs/melonjs/Vector3d.html#x"},"Rn3hoV4iKLP4s5o4x6NnO":{"uri":"/melonJS/docs/melonjs/Vector3d.html#y"},"tdaKBBzZP_2gPFeSIZItC":{"uri":"/melonJS/docs/melonjs/Vector3d.html#z"},"BUi4p7bfOfaFk26KQbxSr":{"uri":"/melonJS/docs/melonjs/Vector3d.html#abs"},"V--2JWjxaYdufU5QbT14Z":{"uri":"/melonJS/docs/melonjs/Vector3d.html#add"},"GxIeD4JvwY8AB1MIXec86":{"uri":"/melonJS/docs/melonjs/Vector3d.html#angle"},"Si-TXxU_-ITLmQiz8auFb":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceil"},"wR3D_mYSlCkCGtpsrWbn4":{"uri":"/melonJS/docs/melonjs/Vector3d.html#ceilSelf"},"XBnBibX3BckcLB8qJICEC":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clamp"},"N5BiGvyZjXFq_SCpZ5M9l":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clampSelf"},"Ruzyc_9cUlHAX2LTENRXW":{"uri":"/melonJS/docs/melonjs/Vector3d.html#clone"},"zSc2jYX6Yg0q05BU2FU7w":{"uri":"/melonJS/docs/melonjs/Vector3d.html#constructor"},"w4WlQAmZopTsm4w83h1-F":{"uri":"/melonJS/docs/melonjs/Vector3d.html#copy"},"M6gFS3YM7HbnxnBn8fItf":{"uri":"/melonJS/docs/melonjs/Vector3d.html#cross"},"xn-nrjKWZihJqcXiq8Drn":{"uri":"/melonJS/docs/melonjs/Vector3d.html#distance"},"7n0dkKhSCILfvvUl7rime":{"uri":"/melonJS/docs/melonjs/Vector3d.html#div"},"fWjrsF2fCHgXUFg7ZkV1h":{"uri":"/melonJS/docs/melonjs/Vector3d.html#dot"},"CCCCpKKTYxyP6hw22CmwJ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#equals"},"ffPWf9AwAP-8OsKbKyDuR":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floor"},"L0foWScQgpcDmGLH0tt2M":{"uri":"/melonJS/docs/melonjs/Vector3d.html#floorSelf"},"NaHmSnOwk1PBS1Y6pt_Fg":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length"},"stX1pDbYRrJXLm_nVnIQd":{"uri":"/melonJS/docs/melonjs/Vector3d.html#length2"},"zXwqrqXXPJ4drYueeDVx2":{"uri":"/melonJS/docs/melonjs/Vector3d.html#lerp"},"JqAtut9CvqWxSlo46Bkrd":{"uri":"/melonJS/docs/melonjs/Vector3d.html#maxV"},"ARPIv1eNbUJqDPVGQU7_M":{"uri":"/melonJS/docs/melonjs/Vector3d.html#minV"},"lwvphk9Hhp7FlTmIDpMws":{"uri":"/melonJS/docs/melonjs/Vector3d.html#moveTowards"},"USkh8fxUz9jUdfFtf8DEx":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negate"},"OzKPVmPKNvj30GAqeeSj7":{"uri":"/melonJS/docs/melonjs/Vector3d.html#negateSelf"},"1nOJdg7TytcN0no7jEUYT":{"uri":"/melonJS/docs/melonjs/Vector3d.html#normalize"},"jKfEUtPsIAyPp3z2JQM3L":{"uri":"/melonJS/docs/melonjs/Vector3d.html#perp"},"nUEYHpUkc_ra6qZ8LsohF":{"uri":"/melonJS/docs/melonjs/Vector3d.html#project"},"kPND2kEFVnPZt2RWKp-Fj":{"uri":"/melonJS/docs/melonjs/Vector3d.html#projectN"},"E6OtoX3zN7Mt1X9-823Kp":{"uri":"/melonJS/docs/melonjs/Vector3d.html#rotate"},"ATj1HHebr_uGqyy45FY4F":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scale"},"ney3I3eLv0UpsDe2OhtFG":{"uri":"/melonJS/docs/melonjs/Vector3d.html#scaleV"},"gXg11xihfXchin6sXch6-":{"uri":"/melonJS/docs/melonjs/Vector3d.html#set"},"QTz7uQj7Ea2DK4-OZePqi":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setV"},"4LDtoSARWBd8rVIUif1KY":{"uri":"/melonJS/docs/melonjs/Vector3d.html#setZero"},"imp3btix6jviFDfx4EoL6":{"uri":"/melonJS/docs/melonjs/Vector3d.html#sub"},"_wZWCQGusenV0X2nTGXJJ":{"uri":"/melonJS/docs/melonjs/Vector3d.html#to2d"},"g5RhbsRlZ7C0q1smLh-mh":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toIso"},"1HchPM4E-FtVMvzGZ4M_q":{"uri":"/melonJS/docs/melonjs/Vector3d.html#toString"},"DxwKNfVtxDgQ9sctAkp6W":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html"},"c8aQlpcCZhOoq6VQt8f7V":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#compositors"},"snReTPa4f5VcorkaWQufT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentCompositor"},"N0jEyP1OJaCczJtV1I6lh":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentProgram"},"lAyPfmLo-db9Ho4jrbZkj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#currentTransform"},"OuxgVa6tuQLvdUPZ6L-IH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#depthTest"},"q-0V9x7Y7T9WooOLFMyG_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#designRatio"},"zMGISoPCazQshLrfRdnZA":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#gl"},"8Wt5eOE6RHFfgr5kgp4D5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPURenderer"},"dDgFQPrW9mB4mGbr2BDRZ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#GPUVendor"},"vFHZfTBCCNd_53PByzR5C":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#height"},"6R2mZLHE3UqEQEeYbgTw7":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#isContextValid"},"hehop7cOUpWyVLworIYnT":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#maxTextures"},"idz7fDk_cQFZq_6uZayr3":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#path2D"},"6wCgUotiOXMyWPGqYns4y":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scaleRatio"},"VES72Mm2fnYZrTD0tjSZw":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#settings"},"ry-2JgSDjNET9hq3B5Aak":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#type"},"RJS0kDsKOQx81Ax_BNcoI":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#vertexBuffer"},"08HSo-BLU6nuMPjjalCWW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#WebGLVersion"},"YCze4G5548RTPeaLJPYIy":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#width"},"d__6bXS_LNm6iIl2pxK1X":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#addCompositor"},"WBIkMirmRTqnm6BHIMjZC":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#beginPath"},"cJ2DjOp3YbS4ZVYCboKOg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clear"},"ZjUH1l1CNZGW3DNX4oAr7":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearColor"},"dDWJVESWJB_4HZLMJuIOW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearMask"},"6nSsQxotrsSuoKsndtte4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearRect"},"bsxVXBWTjlETRKaSoO164":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clearTint"},"sfOLiTNpEJ6xc-cg7G4h_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#clipRect"},"lqOTglNuu4a8MoB9uh3A6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#closePath"},"rEByRJNPCvHKO0HcZTw51":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#constructor"},"iQQaoyZ1Pj8J8Y7wd1rIs":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#createPattern"},"R7AJEKfajhNsyXcQPY7VR":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawImage"},"omIX51IE_DN6Kg93T84qs":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#drawPattern"},"mma4cmlYGazo0kgYiAfPv":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fill"},"glGPnE4JiYXhSb3cxpjeu":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillArc"},"50Yge497eHF4UavXhEFow":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillEllipse"},"zI2aK5y38nt-y2JaMiwWj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillLine"},"U6CS83SJTJBnAgm9B8mlI":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPoint"},"7fJVjvf7vvWGJK0tvavyb":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillPolygon"},"8G0s0SX8VRfnehy5E9I3c":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRect"},"VcL2HbrmBh47AjsJh7XW6":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#fillRoundRect"},"qOXTthgNsnnNK4W51-_VL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#flush"},"CIpIsSThUCigdCquav6Pf":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getBlendMode"},"bR3SkO5gKtf1E6nVFhANB":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getCanvas"},"pk9GTq4msPcGF80ky8obL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getColor"},"LgJF8MWttLmJ5YPQ5JpfL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext"},"BYW1RDKTvTw9M66DO4FEM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContext2d"},"V3oasIAgA5vELAyewSFUH":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getContextGL"},"NQP0rDHLa6SIwY9U1OTTz":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getGlobalAlpha"},"VowUy-CtnVXSLh5xfF6oa":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenCanvas"},"ms4i5aEdLAFKHbsKaIsHp":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#getScreenContext"},"09ZYBFqjwLwW3CAbzUmEK":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#globalAlpha"},"vo-E-tFT31zulWoi9ozXr":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#lineTo"},"x6O6UnlqmZiJ1eiYJcESJ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#moveTo"},"KjeQgipyrya59wDUvDw9m":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#overlaps"},"UOsZFcyXg2KSAYHG_0jMt":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rect"},"r44DM4Q0h2flqXGSZoK7b":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#reset"},"sj5J9shWlYxiPjioBgGEc":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resetTransform"},"n37D3n_GeIHmsV3m8ePYN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#resize"},"_JjN_4MYG9ienKt_ZkJWc":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#restore"},"GHSO425A0WcrHSqQkojLe":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#rotate"},"OgXtd76ZWJcbGZeu63mlN":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#roundRect"},"VVhRzjDOqgnbH0AUOvz1j":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#save"},"-MRswbFy35AtxZj2sMzhW":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#scale"},"vqM11lCVfle15Gq4HH8Zm":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setAntiAlias"},"w1gKSK2154KhAMjjyZSsG":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setBlendMode"},"Oxa86yr3HA-LiIfS2iusq":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setColor"},"9mlFhhWoJXcFI-_kOZphk":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setCompositor"},"Se5zandkRAcafKCP0wMFM":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setGlobalAlpha"},"4ZZTL5vnqS8cXvJyjmNOO":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setLineWidth"},"wQZOyDoWr6z-XZelHPzu_":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setMask"},"CviekWdNHPLHveXdxppCw":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setProjection"},"qeoJzezsiIcqE7Sifr9df":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTint"},"j_1l55nXvswfWXC_Hv22t":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setTransform"},"D_aK9O_rsXGQtR8vWQfVQ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#setViewport"},"P2RfEw9Koy1Q5fjsj7BQd":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#stroke"},"ui8Sv3K5TQD0CX0BGpfY5":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeArc"},"MKg88aNqenb1n8Kvog7d4":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeEllipse"},"dXc8Nm8GmHEUOzrs7Uzds":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeLine"},"Dbs5ochRBnleK1kpv70sL":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePoint"},"cW-z9mtYVfV-3HsY53SEf":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokePolygon"},"UrCkZwCK1i-9dcIZn7_Pl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRect"},"mF_LRAbNU5q-VheqkH1Nh":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#strokeRoundRect"},"ZJqrcXMM2BwOtdcY4vKL9":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#tint"},"YPB0oDKRxX28WThekSMlj":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toBlob"},"F4jb9NzQGj7o7vVQ8eDWJ":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toDataURL"},"YuTnTVRHpQY9BCouKIiYg":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#toImageBitmap"},"EBqy_LjTN2zqtsQJ_yGTl":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#transform"},"op_6YsZjRak7vpaEYSrXD":{"uri":"/melonJS/docs/melonjs/WebGLRenderer.html#translate"},"zPTCd1Ey2XH3WWVHn4py0":{"uri":"/melonJS/docs/melonjs/World.html"},"o9aH_e3YZw1Fdf_k1-WtP":{"uri":"/melonJS/docs/melonjs/World.html#alpha"},"ZRz64pbTXvqPKfJlF8p0R":{"uri":"/melonJS/docs/melonjs/World.html#alwaysUpdate"},"NMcrX-7pLx7XbJ7hthQZw":{"uri":"/melonJS/docs/melonjs/World.html#ancestor"},"XF7-gkkb0YLVwlm7Z8hpZ":{"uri":"/melonJS/docs/melonjs/World.html#anchorPoint"},"TjZpzsBKusFa22_-YXsox":{"uri":"/melonJS/docs/melonjs/World.html#app"},"QrhXAlaZA4mQdx-lpaptx":{"uri":"/melonJS/docs/melonjs/World.html#autoDepth"},"XKRD0uUoWt7PEV4c0iYPy":{"uri":"/melonJS/docs/melonjs/World.html#autoSort"},"3W2hdZejQSETvNNlVCIjI":{"uri":"/melonJS/docs/melonjs/World.html#autoTransform"},"o-gQ9yfVJ5cn70Nd4vvup":{"uri":"/melonJS/docs/melonjs/World.html#backgroundColor"},"FX8FPF3mirNietZ9gF_YM":{"uri":"/melonJS/docs/melonjs/World.html#blendMode"},"rCrRUc7WshTysiN7MoUrL":{"uri":"/melonJS/docs/melonjs/World.html#bodies"},"KAimhxCuMWVQO6NaVrKk7":{"uri":"/melonJS/docs/melonjs/World.html#body"},"czTpr_mnnp-AmLl_FYd7-":{"uri":"/melonJS/docs/melonjs/World.html#bottom"},"-fGllhEK3pyYHOMYxWSIp":{"uri":"/melonJS/docs/melonjs/World.html#broadphase"},"i4m8SVQH_w_bvOEtxw4nL":{"uri":"/melonJS/docs/melonjs/World.html#centerX"},"veh_3JK_9CEgFP3dD0Dwv":{"uri":"/melonJS/docs/melonjs/World.html#centerY"},"afLp6KExfI-fRvgu4zdwa":{"uri":"/melonJS/docs/melonjs/World.html#clipping"},"6I8P3A6LPNPcPpEI2uP4w":{"uri":"/melonJS/docs/melonjs/World.html#currentTransform"},"S-M30bail1RIaxzV2GijR":{"uri":"/melonJS/docs/melonjs/World.html#depth"},"lEF-dqOyHwvGnN70SZSCq":{"uri":"/melonJS/docs/melonjs/World.html#detector"},"6vYpjWqaanPR4zDfXW1MZ":{"uri":"/melonJS/docs/melonjs/World.html#enableChildBoundsUpdate"},"zduQtTaGKslcc3mpKv4C-":{"uri":"/melonJS/docs/melonjs/World.html#floating"},"aHl795p7gh4AbFduRXngA":{"uri":"/melonJS/docs/melonjs/World.html#fps"},"2H_mCiX_Co8NJy0-2F3pZ":{"uri":"/melonJS/docs/melonjs/World.html#gravity"},"lI04bWKZcgmi8_E1r9cV0":{"uri":"/melonJS/docs/melonjs/World.html#GUID"},"A5dnWVve36EmcZZawZlMW":{"uri":"/melonJS/docs/melonjs/World.html#height"},"s5Y07XJZJXkJ1ZS5NWuS5":{"uri":"/melonJS/docs/melonjs/World.html#inViewport"},"OHTTEqmrMkR_LcQD8Mz9G":{"uri":"/melonJS/docs/melonjs/World.html#isDirty"},"sN3SP2jqBNWLNFdZfNyFR":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedX"},"DAjZ8l9G2g-K6o_wkbCe_":{"uri":"/melonJS/docs/melonjs/World.html#isFlippedY"},"EasWXU20-5GiwXGcL-DR9":{"uri":"/melonJS/docs/melonjs/World.html#isFloating"},"eiSEnkZbS1H5X-M2B3TUe":{"uri":"/melonJS/docs/melonjs/World.html#isKinematic"},"OeJmTD3Xryn2z-L_NLZu3":{"uri":"/melonJS/docs/melonjs/World.html#isPersistent"},"6YnH5opPS97zBWg3wKdi7":{"uri":"/melonJS/docs/melonjs/World.html#left"},"q5tTHdQ6ndL4uR7THfBBa":{"uri":"/melonJS/docs/melonjs/World.html#mask"},"SIdQnrlOMKdC5vzdxBCoh":{"uri":"/melonJS/docs/melonjs/World.html#name"},"CNyF33Kj2n8ZwV3CHlROE":{"uri":"/melonJS/docs/melonjs/World.html#onVisibilityChange"},"qY1eOnMQkqA6K4CV1u2Uq":{"uri":"/melonJS/docs/melonjs/World.html#physic"},"s6_HcD4I0k-mZ8fkZT6n6":{"uri":"/melonJS/docs/melonjs/World.html#points"},"3QD23SMTaSOROOhlPOCph":{"uri":"/melonJS/docs/melonjs/World.html#pos"},"z_4I-9C_jGD_B7MhF0VgH":{"uri":"/melonJS/docs/melonjs/World.html#preRender"},"VCApdSd9mc6PksYyGEBOG":{"uri":"/melonJS/docs/melonjs/World.html#right"},"3AoAG-qQeZPiwZmebrPFZ":{"uri":"/melonJS/docs/melonjs/World.html#root"},"eQqqHo8wvzaEs1FWECweC":{"uri":"/melonJS/docs/melonjs/World.html#shader"},"nwEazLzE7M5M4EuqIUgnV":{"uri":"/melonJS/docs/melonjs/World.html#sortOn"},"sY0IGpJvNrdSBMHNlQ6ZC":{"uri":"/melonJS/docs/melonjs/World.html#tint"},"S30ydJqIORnZ_DiI3X0Ma":{"uri":"/melonJS/docs/melonjs/World.html#top"},"VaoxCGcpaN3BCqvHAq1mf":{"uri":"/melonJS/docs/melonjs/World.html#type"},"K1mzf53-ng-gHh11tHeZm":{"uri":"/melonJS/docs/melonjs/World.html#updateWhenPaused"},"UVvnk0pcdVeBG59XfT6cs":{"uri":"/melonJS/docs/melonjs/World.html#width"},"5sCip99i3_iMWC0YrxsLT":{"uri":"/melonJS/docs/melonjs/World.html#addBody"},"w2QeGMgHi_pWQhxzkT89U":{"uri":"/melonJS/docs/melonjs/World.html#addChild"},"r4LFVhqnwzRy-fNEvaEcN":{"uri":"/melonJS/docs/melonjs/World.html#addChildAt"},"6E__B5-8mVngmeTetYnF1":{"uri":"/melonJS/docs/melonjs/World.html#angleTo"},"wtCpFqgITgr7IWjIcXVlw":{"uri":"/melonJS/docs/melonjs/World.html#centerOn"},"ljTakD50TemB7yOvuOKMi":{"uri":"/melonJS/docs/melonjs/World.html#clone"},"H7EX4FrbdwurKS7_K-4cl":{"uri":"/melonJS/docs/melonjs/World.html#constructor"},"-9ppQ95bu2oBFP63nTeHb":{"uri":"/melonJS/docs/melonjs/World.html#contains"},"OLfgOG0Xyp4pCsp__p5OI":{"uri":"/melonJS/docs/melonjs/World.html#copy"},"sHuPlX8JZofdHn6_i22Xg":{"uri":"/melonJS/docs/melonjs/World.html#distanceTo"},"TlEGkFvLZw-dKeZ3ape2X":{"uri":"/melonJS/docs/melonjs/World.html#equals"},"QG9NXvany8jIgNdq1Juv0":{"uri":"/melonJS/docs/melonjs/World.html#flipX"},"J3du9x4ljvqmLef2MnlDk":{"uri":"/melonJS/docs/melonjs/World.html#flipY"},"1tTVPQaY0_WkeCZp-Yf0W":{"uri":"/melonJS/docs/melonjs/World.html#forEach"},"jhFHbHC5XCnByaGMkSUlA":{"uri":"/melonJS/docs/melonjs/World.html#getAbsolutePosition"},"TihF1cCpf5aa4Wv0yX3gW":{"uri":"/melonJS/docs/melonjs/World.html#getBounds"},"7W7gSSaRIyGBtl_-dUQ5s":{"uri":"/melonJS/docs/melonjs/World.html#getChildAt"},"YBiewjB_T_StVs5m60l7V":{"uri":"/melonJS/docs/melonjs/World.html#getChildByGUID"},"B60EDhdv0_oYK0F3e4v4A":{"uri":"/melonJS/docs/melonjs/World.html#getChildByName"},"1LoV2dG2T6xP1RPEDr_YK":{"uri":"/melonJS/docs/melonjs/World.html#getChildByProp"},"9YeNnxdHeoEJHYSlEcr4M":{"uri":"/melonJS/docs/melonjs/World.html#getChildByType"},"lZTc5uGjvSO0_dOOaCYDJ":{"uri":"/melonJS/docs/melonjs/World.html#getChildIndex"},"S5jwch8zBbB6HfU1FJcvK":{"uri":"/melonJS/docs/melonjs/World.html#getChildren"},"cPDCUkjMWHp90xUoj4qch":{"uri":"/melonJS/docs/melonjs/World.html#getIndices"},"Tn63aEvPd9makD3mt2Lt2":{"uri":"/melonJS/docs/melonjs/World.html#getNextChild"},"0gYl10utOFy_L00zRv8r8":{"uri":"/melonJS/docs/melonjs/World.html#getOpacity"},"LhNrs0PH8_xhthg1bz7hl":{"uri":"/melonJS/docs/melonjs/World.html#getRootAncestor"},"dG8znuLCjDHeTHJOp9AQ8":{"uri":"/melonJS/docs/melonjs/World.html#hasChild"},"YUEN2Y_Bk9ffQCPHu0s6i":{"uri":"/melonJS/docs/melonjs/World.html#isAttachedToRoot"},"1dM6DYuWc9owhnB3lg8CJ":{"uri":"/melonJS/docs/melonjs/World.html#isConvex"},"csrXFSOlCRR7HJWijKw9x":{"uri":"/melonJS/docs/melonjs/World.html#isFinite"},"N-Tdr7tQf0f4cMSAYkE30":{"uri":"/melonJS/docs/melonjs/World.html#lookAt"},"ad20Lfdc_pErDxgHY1Tez":{"uri":"/melonJS/docs/melonjs/World.html#moveDown"},"ZcoTFWt0vlDvqGvHBVTNP":{"uri":"/melonJS/docs/melonjs/World.html#moveToBottom"},"ncN-KwAixzz8Zbklulg3Z":{"uri":"/melonJS/docs/melonjs/World.html#moveToTop"},"Jz2VMxPbOLfU4oCnLcLOM":{"uri":"/melonJS/docs/melonjs/World.html#moveUp"},"K9kmjblVaetIPAkp8EOIy":{"uri":"/melonJS/docs/melonjs/World.html#onChildChange"},"YYUMsxm2-tPYLNn07TbMD":{"uri":"/melonJS/docs/melonjs/World.html#onCollision"},"X-k46_Hjr2zqShEoPyQsX":{"uri":"/melonJS/docs/melonjs/World.html#onDestroyEvent"},"w8AO7enMRj382opHthVgm":{"uri":"/melonJS/docs/melonjs/World.html#overlaps"},"37UtuuqRhC9zQmvNhx3y1":{"uri":"/melonJS/docs/melonjs/World.html#postDraw"},"molpspkXj2KJV7AGh_rDF":{"uri":"/melonJS/docs/melonjs/World.html#preDraw"},"mDQPINS3uL8d3Nv7X7Yfk":{"uri":"/melonJS/docs/melonjs/World.html#recalc"},"GnI5_zaE-yuq5HbKbJorn":{"uri":"/melonJS/docs/melonjs/World.html#removeBody"},"6c0Sh0RveGDMxv4_XF5w_":{"uri":"/melonJS/docs/melonjs/World.html#removeChild"},"0BHkovwJT34JdJM9GWY59":{"uri":"/melonJS/docs/melonjs/World.html#removeChildNow"},"y-pfsFJPV6slcYV6W-25Z":{"uri":"/melonJS/docs/melonjs/World.html#reset"},"zzA34CGjgHe1bszdES3Lj":{"uri":"/melonJS/docs/melonjs/World.html#resize"},"a4bT-Vwq7k_O0FRInRDCY":{"uri":"/melonJS/docs/melonjs/World.html#rotate"},"3SvvMn6iM-gCgTssFBVjg":{"uri":"/melonJS/docs/melonjs/World.html#scale"},"n5CqlXHgHF--wNAQV7bAS":{"uri":"/melonJS/docs/melonjs/World.html#scaleV"},"n-Me_b1RfrTfA6X5-e9No":{"uri":"/melonJS/docs/melonjs/World.html#setChildsProperty"},"ELQ1ZODvDCSn-LxISRoRB":{"uri":"/melonJS/docs/melonjs/World.html#setOpacity"},"L85paiV4flhIbzqG1fGZi":{"uri":"/melonJS/docs/melonjs/World.html#setShape"},"RI8q_FrWJ250Idt1bAJBx":{"uri":"/melonJS/docs/melonjs/World.html#setVertices"},"ssBFI9QWPzylGkj9yKGEa":{"uri":"/melonJS/docs/melonjs/World.html#shift"},"J_BS3Lp8EzfPbvJZQzqgn":{"uri":"/melonJS/docs/melonjs/World.html#sort"},"UOscS-v61TUo91kjXeSDQ":{"uri":"/melonJS/docs/melonjs/World.html#step"},"_CoEff0WhFIQFY5GnT1Wa":{"uri":"/melonJS/docs/melonjs/World.html#swapChildren"},"nIb0ozcmFrS8RTU63gyU3":{"uri":"/melonJS/docs/melonjs/World.html#to2d"},"VTttSp0z-bucp06GfA6u7":{"uri":"/melonJS/docs/melonjs/World.html#toIso"},"pqGXtTar56puGc7kwG4c-":{"uri":"/melonJS/docs/melonjs/World.html#toPolygon"},"o-DGxTGHKjV1OhJ4G1hfy":{"uri":"/melonJS/docs/melonjs/World.html#transform"},"wQysDvn8akqLgkdarwdZc":{"uri":"/melonJS/docs/melonjs/World.html#translate"},"suR_GybkWAzj4q2vqH16j":{"uri":"/melonJS/docs/melonjs/World.html#union"},"2Ky68bNfwGuCGGwms7gzu":{"uri":"/melonJS/docs/melonjs/World.html#update"},"dXRpVCl9SZer70GLblPXt":{"uri":"/melonJS/docs/melonjs/World.html#updateBounds"},"HPJYEJYVA36VS8MU9JDju":{"uri":"/melonJS/docs/melonjs/World.html#draw"},"7hSWTcVfGvG23Jm7fmJYK":{"uri":"/melonJS/docs/melonjs/World.html#bodyApplyGravity"},"rEWe4qOFxc17oLHyociX3":{"uri":"/melonJS/docs/melonjs/World.html#onAnchorUpdate"},"O_OiuZRZ2PBGslbr9HUBN":{"uri":"global.html#AUTO"},"TjoMKJXKK2BnlKpMuWj-V":{"uri":"global.html#CANVAS"},"aeRTGqld4zuev0VfS_Prw":{"uri":"global.html#version"},"DMMnA8MP4x-KA6QF6Ck1y":{"uri":"global.html#WEBGL"},"Q78IVvr-Lq3R2LtC1tyND":{"uri":"global.html#imgList"},"bLTSmeUkfNX46NeF8ehQU":{"uri":"global.html#initialized"},"i6zm2TN9YCRR8oslcQYjY":{"uri":"global.html#parserInitialized"},"FV_8_fNEWtLtAhMdeWS9l":{"uri":"global.html#parsers"},"nZVbMKiiuVhpELEHMOZob":{"uri":"global.html#skipAutoInit"},"h7_6y41Czdd-BkL1Thb4n":{"uri":"/melonJS/docs/melonjs/boot.html"},"jOGLPY8U5_bk88iiHYYeZ":{"uri":"/melonJS/docs/melonjs/consoleHeader.html"},"NATjy57ddbGEe8lFuovd5":{"uri":"/melonJS/docs/melonjs/warning.html"},"Gr9OxMggPoAxX63JQcIP3":{"uri":"/melonJS/docs/melonjs/onresize.html"},"tRC_j6iPN7SyyMQyvoLm0":{"uri":"/melonJS/docs/melonjs/scale.html"}}} \ No newline at end of file diff --git a/docs/docs/melonjs.api.json.md5 b/docs/docs/melonjs.api.json.md5 index a4acea53a8..51c3de7e10 100644 --- a/docs/docs/melonjs.api.json.md5 +++ b/docs/docs/melonjs.api.json.md5 @@ -1 +1 @@ -b9ffb89494351434a060491dd8908a2d \ No newline at end of file +21ce7fd233b746139de6f805dba82df3 \ No newline at end of file diff --git a/docs/docs/melonjs.html b/docs/docs/melonjs.html index 9debe0112a..7cb924979b 100644 --- a/docs/docs/melonjs.html +++ b/docs/docs/melonjs.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Application.html b/docs/docs/melonjs/Application.html index ab24ceaf22..31d06c3c8a 100644 --- a/docs/docs/melonjs/Application.html +++ b/docs/docs/melonjs/Application.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Application/Settings.html b/docs/docs/melonjs/Application/Settings.html index 554ca39898..0bc6e7cf73 100644 --- a/docs/docs/melonjs/Application/Settings.html +++ b/docs/docs/melonjs/Application/Settings.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/BitmapText.html b/docs/docs/melonjs/BitmapText.html index 39b3dfb72d..b3b8257a3d 100644 --- a/docs/docs/melonjs/BitmapText.html +++ b/docs/docs/melonjs/BitmapText.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Body.html b/docs/docs/melonjs/Body.html index 156b8b35ed..250bfaadf7 100644 --- a/docs/docs/melonjs/Body.html +++ b/docs/docs/melonjs/Body.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Bounds.html b/docs/docs/melonjs/Bounds.html index 3615f07e63..622d6c1d06 100644 --- a/docs/docs/melonjs/Bounds.html +++ b/docs/docs/melonjs/Bounds.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Camera2d.html b/docs/docs/melonjs/Camera2d.html index 9fc862bc54..0db263d47d 100644 --- a/docs/docs/melonjs/Camera2d.html +++ b/docs/docs/melonjs/Camera2d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Camera2d/AXIS.html b/docs/docs/melonjs/Camera2d/AXIS.html index fef9ca3ea8..bc0c5b0b35 100644 --- a/docs/docs/melonjs/Camera2d/AXIS.html +++ b/docs/docs/melonjs/Camera2d/AXIS.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/CanvasRenderer.html b/docs/docs/melonjs/CanvasRenderer.html index 7d4d87fede..6a60203d14 100644 --- a/docs/docs/melonjs/CanvasRenderer.html +++ b/docs/docs/melonjs/CanvasRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/CanvasTexture.html b/docs/docs/melonjs/CanvasTexture.html index 0a9ff3ae80..efdab66627 100644 --- a/docs/docs/melonjs/CanvasTexture.html +++ b/docs/docs/melonjs/CanvasTexture.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Collectable.html b/docs/docs/melonjs/Collectable.html index 7a9354e9ac..015b138788 100644 --- a/docs/docs/melonjs/Collectable.html +++ b/docs/docs/melonjs/Collectable.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Color.html b/docs/docs/melonjs/Color.html index 4985763cf4..1337a13ef3 100644 --- a/docs/docs/melonjs/Color.html +++ b/docs/docs/melonjs/Color.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ColorLayer.html b/docs/docs/melonjs/ColorLayer.html index 72a0edd624..34087d7d5e 100644 --- a/docs/docs/melonjs/ColorLayer.html +++ b/docs/docs/melonjs/ColorLayer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Compositor.html b/docs/docs/melonjs/Compositor.html index 5842c83822..6aadd3e152 100644 --- a/docs/docs/melonjs/Compositor.html +++ b/docs/docs/melonjs/Compositor.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Container.html b/docs/docs/melonjs/Container.html index 0fa8b35a5b..c70839c51d 100644 --- a/docs/docs/melonjs/Container.html +++ b/docs/docs/melonjs/Container.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Detector.html b/docs/docs/melonjs/Detector.html index d7705544d3..b28057d715 100644 --- a/docs/docs/melonjs/Detector.html +++ b/docs/docs/melonjs/Detector.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Draggable.html b/docs/docs/melonjs/Draggable.html index 78dd33e154..b802314736 100644 --- a/docs/docs/melonjs/Draggable.html +++ b/docs/docs/melonjs/Draggable.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/DraggableEntity.html b/docs/docs/melonjs/DraggableEntity.html index 2ce0862614..be22ababa6 100644 --- a/docs/docs/melonjs/DraggableEntity.html +++ b/docs/docs/melonjs/DraggableEntity.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/DropTarget.html b/docs/docs/melonjs/DropTarget.html index 3abf7dd77f..0d981277fd 100644 --- a/docs/docs/melonjs/DropTarget.html +++ b/docs/docs/melonjs/DropTarget.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/DroptargetEntity.html b/docs/docs/melonjs/DroptargetEntity.html index 08c793d2f3..889adfb1fa 100644 --- a/docs/docs/melonjs/DroptargetEntity.html +++ b/docs/docs/melonjs/DroptargetEntity.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Ellipse.html b/docs/docs/melonjs/Ellipse.html index fdb57cd7cc..43dc169af2 100644 --- a/docs/docs/melonjs/Ellipse.html +++ b/docs/docs/melonjs/Ellipse.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Entity.html b/docs/docs/melonjs/Entity.html index 8495405949..a30db52588 100644 --- a/docs/docs/melonjs/Entity.html +++ b/docs/docs/melonjs/Entity.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/GLShader.html b/docs/docs/melonjs/GLShader.html index 4857a39f78..637d0121e5 100644 --- a/docs/docs/melonjs/GLShader.html +++ b/docs/docs/melonjs/GLShader.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/GUI_Object.html b/docs/docs/melonjs/GUI_Object.html index dbae953683..a03df7b5e4 100644 --- a/docs/docs/melonjs/GUI_Object.html +++ b/docs/docs/melonjs/GUI_Object.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ImageLayer.html b/docs/docs/melonjs/ImageLayer.html index ebe68eacf3..14d28b247c 100644 --- a/docs/docs/melonjs/ImageLayer.html +++ b/docs/docs/melonjs/ImageLayer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Light2d.html b/docs/docs/melonjs/Light2d.html index adea0dd084..320d0c73b1 100644 --- a/docs/docs/melonjs/Light2d.html +++ b/docs/docs/melonjs/Light2d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Line.html b/docs/docs/melonjs/Line.html index 2c6dc810f0..35627fbd48 100644 --- a/docs/docs/melonjs/Line.html +++ b/docs/docs/melonjs/Line.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math.html b/docs/docs/melonjs/Math.html index 41be287de5..fb75dc5e2f 100644 --- a/docs/docs/melonjs/Math.html +++ b/docs/docs/melonjs/Math.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/clamp.html b/docs/docs/melonjs/Math/clamp.html index e6dad96455..c870e25a8f 100644 --- a/docs/docs/melonjs/Math/clamp.html +++ b/docs/docs/melonjs/Math/clamp.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/degToRad.html b/docs/docs/melonjs/Math/degToRad.html index 7ec21497ec..bc83d76fd1 100644 --- a/docs/docs/melonjs/Math/degToRad.html +++ b/docs/docs/melonjs/Math/degToRad.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/isPowerOfTwo.html b/docs/docs/melonjs/Math/isPowerOfTwo.html index 911a9e84d9..434dabc7e4 100644 --- a/docs/docs/melonjs/Math/isPowerOfTwo.html +++ b/docs/docs/melonjs/Math/isPowerOfTwo.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/nextPowerOfTwo.html b/docs/docs/melonjs/Math/nextPowerOfTwo.html index e0c1a2164f..a2c495e2bc 100644 --- a/docs/docs/melonjs/Math/nextPowerOfTwo.html +++ b/docs/docs/melonjs/Math/nextPowerOfTwo.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/radToDeg.html b/docs/docs/melonjs/Math/radToDeg.html index f90b57787b..cde71ec028 100644 --- a/docs/docs/melonjs/Math/radToDeg.html +++ b/docs/docs/melonjs/Math/radToDeg.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/random.html b/docs/docs/melonjs/Math/random.html index a540affa7b..25204c70c5 100644 --- a/docs/docs/melonjs/Math/random.html +++ b/docs/docs/melonjs/Math/random.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/randomFloat.html b/docs/docs/melonjs/Math/randomFloat.html index 24936416bd..067268841c 100644 --- a/docs/docs/melonjs/Math/randomFloat.html +++ b/docs/docs/melonjs/Math/randomFloat.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/round.html b/docs/docs/melonjs/Math/round.html index 3334a4638f..f16455e8ff 100644 --- a/docs/docs/melonjs/Math/round.html +++ b/docs/docs/melonjs/Math/round.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/toBeCloseTo.html b/docs/docs/melonjs/Math/toBeCloseTo.html index 3588911a88..6c7590503c 100644 --- a/docs/docs/melonjs/Math/toBeCloseTo.html +++ b/docs/docs/melonjs/Math/toBeCloseTo.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Math/weightedRandom.html b/docs/docs/melonjs/Math/weightedRandom.html index cc0f3d63c7..9259c4d13b 100644 --- a/docs/docs/melonjs/Math/weightedRandom.html +++ b/docs/docs/melonjs/Math/weightedRandom.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Matrix2d.html b/docs/docs/melonjs/Matrix2d.html index 2cdd0548df..ce48b04a3b 100644 --- a/docs/docs/melonjs/Matrix2d.html +++ b/docs/docs/melonjs/Matrix2d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Matrix3d.html b/docs/docs/melonjs/Matrix3d.html index 97ba5abb71..03bf2f07b6 100644 --- a/docs/docs/melonjs/Matrix3d.html +++ b/docs/docs/melonjs/Matrix3d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/NineSliceSprite.html b/docs/docs/melonjs/NineSliceSprite.html index e0478d0195..8be9473022 100644 --- a/docs/docs/melonjs/NineSliceSprite.html +++ b/docs/docs/melonjs/NineSliceSprite.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ObjectPool.html b/docs/docs/melonjs/ObjectPool.html index 1ba5427fa1..c30a209738 100644 --- a/docs/docs/melonjs/ObjectPool.html +++ b/docs/docs/melonjs/ObjectPool.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ObservableVector2d.html b/docs/docs/melonjs/ObservableVector2d.html index f0fe31f3c5..ad4e93a907 100644 --- a/docs/docs/melonjs/ObservableVector2d.html +++ b/docs/docs/melonjs/ObservableVector2d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ObservableVector3d.html b/docs/docs/melonjs/ObservableVector3d.html index e23fda7399..56e5cecfe0 100644 --- a/docs/docs/melonjs/ObservableVector3d.html +++ b/docs/docs/melonjs/ObservableVector3d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Particle.html b/docs/docs/melonjs/Particle.html index 4cda535c6c..8178d1789f 100644 --- a/docs/docs/melonjs/Particle.html +++ b/docs/docs/melonjs/Particle.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ParticleEmitter.html b/docs/docs/melonjs/ParticleEmitter.html index 3893285f4d..51951966c9 100644 --- a/docs/docs/melonjs/ParticleEmitter.html +++ b/docs/docs/melonjs/ParticleEmitter.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ParticleEmitterSettings.html b/docs/docs/melonjs/ParticleEmitterSettings.html index d6c6f6f2f6..f8a1926f54 100644 --- a/docs/docs/melonjs/ParticleEmitterSettings.html +++ b/docs/docs/melonjs/ParticleEmitterSettings.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Path2D.html b/docs/docs/melonjs/Path2D.html index ecbf0105c4..aa651f7c21 100644 --- a/docs/docs/melonjs/Path2D.html +++ b/docs/docs/melonjs/Path2D.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Point.html b/docs/docs/melonjs/Point.html index 3593ab3eb8..542f79568c 100644 --- a/docs/docs/melonjs/Point.html +++ b/docs/docs/melonjs/Point.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Pointer.html b/docs/docs/melonjs/Pointer.html index 713827b074..75f4cc9302 100644 --- a/docs/docs/melonjs/Pointer.html +++ b/docs/docs/melonjs/Pointer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Polygon.html b/docs/docs/melonjs/Polygon.html index 43f44f852f..0b349dc0d8 100644 --- a/docs/docs/melonjs/Polygon.html +++ b/docs/docs/melonjs/Polygon.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/PrimitiveCompositor.html b/docs/docs/melonjs/PrimitiveCompositor.html index 4dcdc039b8..10397b3132 100644 --- a/docs/docs/melonjs/PrimitiveCompositor.html +++ b/docs/docs/melonjs/PrimitiveCompositor.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/QuadCompositor.html b/docs/docs/melonjs/QuadCompositor.html index 039aa44d21..4b98b9e5bd 100644 --- a/docs/docs/melonjs/QuadCompositor.html +++ b/docs/docs/melonjs/QuadCompositor.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/QuadTree.html b/docs/docs/melonjs/QuadTree.html index 98f7310818..e9fd211c1a 100644 --- a/docs/docs/melonjs/QuadTree.html +++ b/docs/docs/melonjs/QuadTree.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Rect.html b/docs/docs/melonjs/Rect.html index bad27dd5f0..847f97edcd 100644 --- a/docs/docs/melonjs/Rect.html +++ b/docs/docs/melonjs/Rect.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Renderable.html b/docs/docs/melonjs/Renderable.html index 744286f6b7..ac463f6639 100644 --- a/docs/docs/melonjs/Renderable.html +++ b/docs/docs/melonjs/Renderable.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Renderer.html b/docs/docs/melonjs/Renderer.html index a0906603d9..c4d72e3a46 100644 --- a/docs/docs/melonjs/Renderer.html +++ b/docs/docs/melonjs/Renderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Renderer/Texture.html b/docs/docs/melonjs/Renderer/Texture.html index 9983235456..0e2ff7f759 100644 --- a/docs/docs/melonjs/Renderer/Texture.html +++ b/docs/docs/melonjs/Renderer/Texture.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Renderer/getHeight.html b/docs/docs/melonjs/Renderer/getHeight.html index 50782f985e..39c9676b67 100644 --- a/docs/docs/melonjs/Renderer/getHeight.html +++ b/docs/docs/melonjs/Renderer/getHeight.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Renderer/getWidth.html b/docs/docs/melonjs/Renderer/getWidth.html index 6f64124854..797c1aeb6c 100644 --- a/docs/docs/melonjs/Renderer/getWidth.html +++ b/docs/docs/melonjs/Renderer/getWidth.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/ResponseObject.html b/docs/docs/melonjs/ResponseObject.html index f09ceb10ad..c93e547ea3 100644 --- a/docs/docs/melonjs/ResponseObject.html +++ b/docs/docs/melonjs/ResponseObject.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/RoundRect.html b/docs/docs/melonjs/RoundRect.html index e357c4648e..bcba673d99 100644 --- a/docs/docs/melonjs/RoundRect.html +++ b/docs/docs/melonjs/RoundRect.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Sprite.html b/docs/docs/melonjs/Sprite.html index f871da72bf..e6820e7121 100644 --- a/docs/docs/melonjs/Sprite.html +++ b/docs/docs/melonjs/Sprite.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Stage.html b/docs/docs/melonjs/Stage.html index 2db4f8b8de..c6a5dfbc87 100644 --- a/docs/docs/melonjs/Stage.html +++ b/docs/docs/melonjs/Stage.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXHexagonalRenderer.html b/docs/docs/melonjs/TMXHexagonalRenderer.html index 529e983abc..3a4f808314 100644 --- a/docs/docs/melonjs/TMXHexagonalRenderer.html +++ b/docs/docs/melonjs/TMXHexagonalRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXIsometricRenderer.html b/docs/docs/melonjs/TMXIsometricRenderer.html index 8957e012f0..bb7e2ae3be 100644 --- a/docs/docs/melonjs/TMXIsometricRenderer.html +++ b/docs/docs/melonjs/TMXIsometricRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXLayer.html b/docs/docs/melonjs/TMXLayer.html index 2f72933d88..3e13503490 100644 --- a/docs/docs/melonjs/TMXLayer.html +++ b/docs/docs/melonjs/TMXLayer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXOrthogonalRenderer.html b/docs/docs/melonjs/TMXOrthogonalRenderer.html index f0c15ed58e..6ecaeb28fb 100644 --- a/docs/docs/melonjs/TMXOrthogonalRenderer.html +++ b/docs/docs/melonjs/TMXOrthogonalRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXRenderer.html b/docs/docs/melonjs/TMXRenderer.html index d9b70d8f1c..6829b665f8 100644 --- a/docs/docs/melonjs/TMXRenderer.html +++ b/docs/docs/melonjs/TMXRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXStaggeredRenderer.html b/docs/docs/melonjs/TMXStaggeredRenderer.html index 8e75800a3e..4d3a728cd5 100644 --- a/docs/docs/melonjs/TMXStaggeredRenderer.html +++ b/docs/docs/melonjs/TMXStaggeredRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXTileMap.html b/docs/docs/melonjs/TMXTileMap.html index 051b0e721c..ecb2852f29 100644 --- a/docs/docs/melonjs/TMXTileMap.html +++ b/docs/docs/melonjs/TMXTileMap.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXTileset.html b/docs/docs/melonjs/TMXTileset.html index 26abe4b824..03810f4b23 100644 --- a/docs/docs/melonjs/TMXTileset.html +++ b/docs/docs/melonjs/TMXTileset.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXTilesetGroup.html b/docs/docs/melonjs/TMXTilesetGroup.html index b5c45178d4..8fcbc6687a 100644 --- a/docs/docs/melonjs/TMXTilesetGroup.html +++ b/docs/docs/melonjs/TMXTilesetGroup.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils.html b/docs/docs/melonjs/TMXUtils.html index 1ddc0a20b7..e9a6d50575 100644 --- a/docs/docs/melonjs/TMXUtils.html +++ b/docs/docs/melonjs/TMXUtils.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/applyTMXProperties.html b/docs/docs/melonjs/TMXUtils/applyTMXProperties.html index 884db62e4f..0751858903 100644 --- a/docs/docs/melonjs/TMXUtils/applyTMXProperties.html +++ b/docs/docs/melonjs/TMXUtils/applyTMXProperties.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/decode.html b/docs/docs/melonjs/TMXUtils/decode.html index e0affd8d0a..1826647717 100644 --- a/docs/docs/melonjs/TMXUtils/decode.html +++ b/docs/docs/melonjs/TMXUtils/decode.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/decodeBase64AsArray.html b/docs/docs/melonjs/TMXUtils/decodeBase64AsArray.html index b15abb41c7..d5e07c7ccf 100644 --- a/docs/docs/melonjs/TMXUtils/decodeBase64AsArray.html +++ b/docs/docs/melonjs/TMXUtils/decodeBase64AsArray.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/decodeCSV.html b/docs/docs/melonjs/TMXUtils/decodeCSV.html index a696de7127..e93b2e5fef 100644 --- a/docs/docs/melonjs/TMXUtils/decodeCSV.html +++ b/docs/docs/melonjs/TMXUtils/decodeCSV.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/decompress.html b/docs/docs/melonjs/TMXUtils/decompress.html index 06806e4564..a9d263fb92 100644 --- a/docs/docs/melonjs/TMXUtils/decompress.html +++ b/docs/docs/melonjs/TMXUtils/decompress.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/parse.html b/docs/docs/melonjs/TMXUtils/parse.html index 31381a4cd9..72de41413a 100644 --- a/docs/docs/melonjs/TMXUtils/parse.html +++ b/docs/docs/melonjs/TMXUtils/parse.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TMXUtils/setInflateFunction.html b/docs/docs/melonjs/TMXUtils/setInflateFunction.html index f95809ff13..c95fa49055 100644 --- a/docs/docs/melonjs/TMXUtils/setInflateFunction.html +++ b/docs/docs/melonjs/TMXUtils/setInflateFunction.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Text.html b/docs/docs/melonjs/Text.html index 1de53d263c..8c9dd3be45 100644 --- a/docs/docs/melonjs/Text.html +++ b/docs/docs/melonjs/Text.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TextMetrics.html b/docs/docs/melonjs/TextMetrics.html index 5173a5a4a5..2e9c068088 100644 --- a/docs/docs/melonjs/TextMetrics.html +++ b/docs/docs/melonjs/TextMetrics.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/TextureAtlas.html b/docs/docs/melonjs/TextureAtlas.html index 2d797ab896..4dd329575c 100644 --- a/docs/docs/melonjs/TextureAtlas.html +++ b/docs/docs/melonjs/TextureAtlas.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Tile.html b/docs/docs/melonjs/Tile.html index 9850610473..4e63dc51d6 100644 --- a/docs/docs/melonjs/Tile.html +++ b/docs/docs/melonjs/Tile.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Timer_.html b/docs/docs/melonjs/Timer_.html index c644b32fec..da37f266d7 100644 --- a/docs/docs/melonjs/Timer_.html +++ b/docs/docs/melonjs/Timer_.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Trigger.html b/docs/docs/melonjs/Trigger.html index 0585fcaa83..98cfaf4472 100644 --- a/docs/docs/melonjs/Trigger.html +++ b/docs/docs/melonjs/Trigger.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Tween.html b/docs/docs/melonjs/Tween.html index f6a9d11ef8..989de556ea 100644 --- a/docs/docs/melonjs/Tween.html +++ b/docs/docs/melonjs/Tween.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Tween/Easing.html b/docs/docs/melonjs/Tween/Easing.html index 8ed4476a70..9a73f35e1c 100644 --- a/docs/docs/melonjs/Tween/Easing.html +++ b/docs/docs/melonjs/Tween/Easing.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Tween/Interpolation.html b/docs/docs/melonjs/Tween/Interpolation.html index eb6ae93817..6646f1b8c5 100644 --- a/docs/docs/melonjs/Tween/Interpolation.html +++ b/docs/docs/melonjs/Tween/Interpolation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/UIBaseElement.html b/docs/docs/melonjs/UIBaseElement.html index a954d63f47..1fc130c536 100644 --- a/docs/docs/melonjs/UIBaseElement.html +++ b/docs/docs/melonjs/UIBaseElement.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/UISpriteElement.html b/docs/docs/melonjs/UISpriteElement.html index b05fddf2ce..9d4b34dda4 100644 --- a/docs/docs/melonjs/UISpriteElement.html +++ b/docs/docs/melonjs/UISpriteElement.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/UITextButton.html b/docs/docs/melonjs/UITextButton.html index 6c2b63ac95..e658f961fd 100644 --- a/docs/docs/melonjs/UITextButton.html +++ b/docs/docs/melonjs/UITextButton.html @@ -1,5 +1,5 @@ - + @@ -132,6 +132,8 @@

                              Constructor

                              // if you omit the next two, size is calculated by the size of the text borderWidth: 200, borderHeight: 20, + backgroundColor: '#00aa0080', + hoverColor: '#00ff00ff' }); } @@ -271,7 +273,7 @@

                              Constructor

                              - settings.backgroundColor + settings.hoverOffColor string @@ -285,11 +287,11 @@

                              Constructor

                              "#00aa0080" -

                              The css value of a background color

                              +

                              The css value of a color to be used if the pointer is not hovering over the button

                              - settings.hoverColor + settings.hoverOnColor string @@ -459,7 +461,7 @@

                              Properties from UITextButton

                              - backgroundColor + bindKey
                              @@ -470,12 +472,12 @@

                              Properties from UITextButton

                              - string + BitmapText
                              - bindKey + bitmapText
                              @@ -486,12 +488,12 @@

                              Properties from UITextButton

                              - BitmapText + string
                              - bitmapText + borderStrokeColor
                              @@ -507,7 +509,7 @@

                              Properties from UITextButton

                              - borderStrokeColor + hoverOffColor
                              @@ -523,7 +525,7 @@

                              Properties from UITextButton

                              - hoverColor + hoverOnColor
                              @@ -757,6 +759,22 @@

                              Properties inherited from Container

                              + + + + Color + + + +
                              + backgroundColor = (0, 0, 0, 0.0) +
                              +
                              + +
                              + + + @@ -2617,10 +2635,10 @@

                              Public Properties

                              -
                              +
                              -
                              - +
                              + Public Properties /> - backgroundColor + bindKey - uitextbutton.js:60 + uitextbutton.js:56
                              -
                              backgroundColor: string
                              +
                              bindKey: string
                               
                               string
                              @@ -2651,7 +2669,7 @@

                              Public Properties

                              -

                              The css value of a background color

                              +

                              The key to bind the action to

                              @@ -2666,10 +2684,10 @@

                              Public Properties

                              -
                              +
                              -
                              - +
                              + Public Properties /> - bindKey + bitmapText - uitextbutton.js:54 + uitextbutton.js:100
                              -
                              bindKey: string
                              +
                              bitmapText: BitmapText
                               
                              -string
                              +BitmapText
                              @@ -2700,7 +2718,7 @@

                              Public Properties

                              -

                              The key to bind the action to

                              +

                              the bitmapText used by the UITextButton class

                              @@ -2715,10 +2733,10 @@

                              Public Properties

                              -
                              +
                              -
                              - +
                              + Public Properties /> - bitmapText + borderStrokeColor - uitextbutton.js:96 + uitextbutton.js:76
                              -
                              bitmapText: BitmapText
                              +
                              borderStrokeColor: string
                               
                              -BitmapText
                              +string
                              @@ -2749,7 +2767,7 @@

                              Public Properties

                              -

                              the bitmapText used by the UITextButton class

                              +

                              The css value of a color to be used to draw the border

                              @@ -2764,10 +2782,10 @@

                              Public Properties

                              -
                              +
                              -
                              - +
                              + Public Properties /> - borderStrokeColor + hoverOffColor - uitextbutton.js:72 + uitextbutton.js:62
                              -
                              borderStrokeColor: string
                              +
                              hoverOffColor: string
                               
                               string
                              @@ -2798,7 +2816,7 @@

                              Public Properties

                              -

                              The css value of a color to be used to draw the border

                              +

                              The css value of a color to be used if the pointer is nothovering over the button

                              @@ -2813,10 +2831,10 @@

                              Public Properties

                              -
                              +
                              -
                              - +
                              + Public Properties /> - hoverColor + hoverOnColor - uitextbutton.js:66 + uitextbutton.js:69
                              -
                              hoverColor: string
                              +
                              hoverOnColor: string
                               
                               string
                              @@ -2879,7 +2897,7 @@

                              Public Properties

                              - uitextbutton.js:78 + uitextbutton.js:82 @@ -2929,7 +2947,7 @@

                              Public Properties

                              - uitextbutton.js:87 + uitextbutton.js:91 @@ -2989,10 +3007,6 @@

                              Public Properties

                              Public Properties
                                -
                              • - backgroundColor -
                              • -
                              • bindKey
                              • @@ -3005,8 +3019,12 @@

                                Public Properties

                                borderStrokeColor -
                              • - hoverColor +
                              • + hoverOffColor +
                              • + +
                              • + hoverOnColor
                              • diff --git a/docs/docs/melonjs/Vector2d.html b/docs/docs/melonjs/Vector2d.html index 79b0f33718..005948d9f1 100644 --- a/docs/docs/melonjs/Vector2d.html +++ b/docs/docs/melonjs/Vector2d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/Vector3d.html b/docs/docs/melonjs/Vector3d.html index 6f9be9fd7d..ac0e92da0d 100644 --- a/docs/docs/melonjs/Vector3d.html +++ b/docs/docs/melonjs/Vector3d.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/WebGLRenderer.html b/docs/docs/melonjs/WebGLRenderer.html index 22dfd8989d..de7069823d 100644 --- a/docs/docs/melonjs/WebGLRenderer.html +++ b/docs/docs/melonjs/WebGLRenderer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/World.html b/docs/docs/melonjs/World.html index ddd1de397e..00a18af62a 100644 --- a/docs/docs/melonjs/World.html +++ b/docs/docs/melonjs/World.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio.html b/docs/docs/melonjs/audio.html index 60cb38bb79..0b41e7838f 100644 --- a/docs/docs/melonjs/audio.html +++ b/docs/docs/melonjs/audio.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/disable.html b/docs/docs/melonjs/audio/disable.html index 28bbd08d4a..2b45863cfb 100644 --- a/docs/docs/melonjs/audio/disable.html +++ b/docs/docs/melonjs/audio/disable.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/enable.html b/docs/docs/melonjs/audio/enable.html index 37b0a43dcf..854738fbd0 100644 --- a/docs/docs/melonjs/audio/enable.html +++ b/docs/docs/melonjs/audio/enable.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/fade.html b/docs/docs/melonjs/audio/fade.html index b2a89169ed..74f6c58b80 100644 --- a/docs/docs/melonjs/audio/fade.html +++ b/docs/docs/melonjs/audio/fade.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/getCurrentTrack.html b/docs/docs/melonjs/audio/getCurrentTrack.html index 659a0f0c16..6e9ed996f1 100644 --- a/docs/docs/melonjs/audio/getCurrentTrack.html +++ b/docs/docs/melonjs/audio/getCurrentTrack.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/getVolume.html b/docs/docs/melonjs/audio/getVolume.html index bd39e13b5e..0a3792da82 100644 --- a/docs/docs/melonjs/audio/getVolume.html +++ b/docs/docs/melonjs/audio/getVolume.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/hasAudio.html b/docs/docs/melonjs/audio/hasAudio.html index e1f35a63ab..5d6459dc2b 100644 --- a/docs/docs/melonjs/audio/hasAudio.html +++ b/docs/docs/melonjs/audio/hasAudio.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/hasFormat.html b/docs/docs/melonjs/audio/hasFormat.html index 3e09bc7e0b..75cb93d562 100644 --- a/docs/docs/melonjs/audio/hasFormat.html +++ b/docs/docs/melonjs/audio/hasFormat.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/init.html b/docs/docs/melonjs/audio/init.html index 1a728a6f78..c005c63f44 100644 --- a/docs/docs/melonjs/audio/init.html +++ b/docs/docs/melonjs/audio/init.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/load.html b/docs/docs/melonjs/audio/load.html index 717bc66467..1d25d2714d 100644 --- a/docs/docs/melonjs/audio/load.html +++ b/docs/docs/melonjs/audio/load.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/mute.html b/docs/docs/melonjs/audio/mute.html index 0f7d8737bc..533adf9833 100644 --- a/docs/docs/melonjs/audio/mute.html +++ b/docs/docs/melonjs/audio/mute.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/muteAll.html b/docs/docs/melonjs/audio/muteAll.html index ba45613bd3..e8043f2620 100644 --- a/docs/docs/melonjs/audio/muteAll.html +++ b/docs/docs/melonjs/audio/muteAll.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/muted.html b/docs/docs/melonjs/audio/muted.html index 5629515dfa..cf90fabe34 100644 --- a/docs/docs/melonjs/audio/muted.html +++ b/docs/docs/melonjs/audio/muted.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/pause.html b/docs/docs/melonjs/audio/pause.html index 2f41c52d2e..867fad88c5 100644 --- a/docs/docs/melonjs/audio/pause.html +++ b/docs/docs/melonjs/audio/pause.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/pauseTrack.html b/docs/docs/melonjs/audio/pauseTrack.html index 4d15da82be..17d6900186 100644 --- a/docs/docs/melonjs/audio/pauseTrack.html +++ b/docs/docs/melonjs/audio/pauseTrack.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/play.html b/docs/docs/melonjs/audio/play.html index 25c79f70c6..024b261c83 100644 --- a/docs/docs/melonjs/audio/play.html +++ b/docs/docs/melonjs/audio/play.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/playTrack.html b/docs/docs/melonjs/audio/playTrack.html index e521be3e80..bd838193dc 100644 --- a/docs/docs/melonjs/audio/playTrack.html +++ b/docs/docs/melonjs/audio/playTrack.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/rate.html b/docs/docs/melonjs/audio/rate.html index 44cadcf6a7..6b3751394c 100644 --- a/docs/docs/melonjs/audio/rate.html +++ b/docs/docs/melonjs/audio/rate.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/resume.html b/docs/docs/melonjs/audio/resume.html index 14f84bbf57..5a94eadaf4 100644 --- a/docs/docs/melonjs/audio/resume.html +++ b/docs/docs/melonjs/audio/resume.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/resumeTrack.html b/docs/docs/melonjs/audio/resumeTrack.html index 439349a4a3..1247fcde06 100644 --- a/docs/docs/melonjs/audio/resumeTrack.html +++ b/docs/docs/melonjs/audio/resumeTrack.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/seek.html b/docs/docs/melonjs/audio/seek.html index 45caed1bbd..986a5832c5 100644 --- a/docs/docs/melonjs/audio/seek.html +++ b/docs/docs/melonjs/audio/seek.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/setVolume.html b/docs/docs/melonjs/audio/setVolume.html index 9714844aa3..914497e2dc 100644 --- a/docs/docs/melonjs/audio/setVolume.html +++ b/docs/docs/melonjs/audio/setVolume.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/stop.html b/docs/docs/melonjs/audio/stop.html index 8c544f9cae..a2c0b2c1f8 100644 --- a/docs/docs/melonjs/audio/stop.html +++ b/docs/docs/melonjs/audio/stop.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/stopTrack.html b/docs/docs/melonjs/audio/stopTrack.html index 56ad5b2815..4b63ef241f 100644 --- a/docs/docs/melonjs/audio/stopTrack.html +++ b/docs/docs/melonjs/audio/stopTrack.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/unload.html b/docs/docs/melonjs/audio/unload.html index 271418f6ef..3abbee6159 100644 --- a/docs/docs/melonjs/audio/unload.html +++ b/docs/docs/melonjs/audio/unload.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/unloadAll.html b/docs/docs/melonjs/audio/unloadAll.html index 36588d137d..6692223b88 100644 --- a/docs/docs/melonjs/audio/unloadAll.html +++ b/docs/docs/melonjs/audio/unloadAll.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/unmute.html b/docs/docs/melonjs/audio/unmute.html index 90213695e5..4da66cd1d4 100644 --- a/docs/docs/melonjs/audio/unmute.html +++ b/docs/docs/melonjs/audio/unmute.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/audio/unmuteAll.html b/docs/docs/melonjs/audio/unmuteAll.html index cbd1515ca5..d100448c95 100644 --- a/docs/docs/melonjs/audio/unmuteAll.html +++ b/docs/docs/melonjs/audio/unmuteAll.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/boot.html b/docs/docs/melonjs/boot.html index 87126d6558..0c7ba34e26 100644 --- a/docs/docs/melonjs/boot.html +++ b/docs/docs/melonjs/boot.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/collision.html b/docs/docs/melonjs/collision.html index 87ec9fa065..2d824351bb 100644 --- a/docs/docs/melonjs/collision.html +++ b/docs/docs/melonjs/collision.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/collision/types.html b/docs/docs/melonjs/collision/types.html index 028d65c211..aa1811961f 100644 --- a/docs/docs/melonjs/collision/types.html +++ b/docs/docs/melonjs/collision/types.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/consoleHeader.html b/docs/docs/melonjs/consoleHeader.html index f1ffc5ab0b..444acf3f58 100644 --- a/docs/docs/melonjs/consoleHeader.html +++ b/docs/docs/melonjs/consoleHeader.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device.html b/docs/docs/melonjs/device.html index 7c0114fe94..2e9bf9be80 100644 --- a/docs/docs/melonjs/device.html +++ b/docs/docs/melonjs/device.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/enableSwipe.html b/docs/docs/melonjs/device/enableSwipe.html index 170bef8be2..dea4213fb5 100644 --- a/docs/docs/melonjs/device/enableSwipe.html +++ b/docs/docs/melonjs/device/enableSwipe.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/exitFullscreen.html b/docs/docs/melonjs/device/exitFullscreen.html index 3cc6e9f262..0004c4f58a 100644 --- a/docs/docs/melonjs/device/exitFullscreen.html +++ b/docs/docs/melonjs/device/exitFullscreen.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/focus.html b/docs/docs/melonjs/device/focus.html index 746f18e27f..6c15bbe6ee 100644 --- a/docs/docs/melonjs/device/focus.html +++ b/docs/docs/melonjs/device/focus.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getElement.html b/docs/docs/melonjs/device/getElement.html index d34ff13978..e58f3431c0 100644 --- a/docs/docs/melonjs/device/getElement.html +++ b/docs/docs/melonjs/device/getElement.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getElementBounds.html b/docs/docs/melonjs/device/getElementBounds.html index 2c0a737c1f..7dda0dc7b4 100644 --- a/docs/docs/melonjs/device/getElementBounds.html +++ b/docs/docs/melonjs/device/getElementBounds.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getParentBounds.html b/docs/docs/melonjs/device/getParentBounds.html index 4aa0b29482..8171941718 100644 --- a/docs/docs/melonjs/device/getParentBounds.html +++ b/docs/docs/melonjs/device/getParentBounds.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getParentElement.html b/docs/docs/melonjs/device/getParentElement.html index 3c9bbdfb78..1a414d52e9 100644 --- a/docs/docs/melonjs/device/getParentElement.html +++ b/docs/docs/melonjs/device/getParentElement.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getScreenOrientation.html b/docs/docs/melonjs/device/getScreenOrientation.html index 175c405bd9..31920b458a 100644 --- a/docs/docs/melonjs/device/getScreenOrientation.html +++ b/docs/docs/melonjs/device/getScreenOrientation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/getStorage.html b/docs/docs/melonjs/device/getStorage.html index 5fbd6cbb29..be36960165 100644 --- a/docs/docs/melonjs/device/getStorage.html +++ b/docs/docs/melonjs/device/getStorage.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/isFullscreen.html b/docs/docs/melonjs/device/isFullscreen.html index 2286e83ec3..70e7311825 100644 --- a/docs/docs/melonjs/device/isFullscreen.html +++ b/docs/docs/melonjs/device/isFullscreen.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/isLandscape.html b/docs/docs/melonjs/device/isLandscape.html index c36dd94e10..b6a2b0e63b 100644 --- a/docs/docs/melonjs/device/isLandscape.html +++ b/docs/docs/melonjs/device/isLandscape.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/isPortrait.html b/docs/docs/melonjs/device/isPortrait.html index 0542f286fb..3c9d7da1eb 100644 --- a/docs/docs/melonjs/device/isPortrait.html +++ b/docs/docs/melonjs/device/isPortrait.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/isWebGLSupported.html b/docs/docs/melonjs/device/isWebGLSupported.html index 5fddf99396..fe4fb7a5d0 100644 --- a/docs/docs/melonjs/device/isWebGLSupported.html +++ b/docs/docs/melonjs/device/isWebGLSupported.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/lockOrientation.html b/docs/docs/melonjs/device/lockOrientation.html index defa0858e7..5c1cb5d588 100644 --- a/docs/docs/melonjs/device/lockOrientation.html +++ b/docs/docs/melonjs/device/lockOrientation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/onReady.html b/docs/docs/melonjs/device/onReady.html index 97531cb533..ef6437a8bd 100644 --- a/docs/docs/melonjs/device/onReady.html +++ b/docs/docs/melonjs/device/onReady.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/platform.html b/docs/docs/melonjs/device/platform.html index 46f32f29df..ac5a59a56f 100644 --- a/docs/docs/melonjs/device/platform.html +++ b/docs/docs/melonjs/device/platform.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/requestFullscreen.html b/docs/docs/melonjs/device/requestFullscreen.html index cdd0e34309..8aed0a4ede 100644 --- a/docs/docs/melonjs/device/requestFullscreen.html +++ b/docs/docs/melonjs/device/requestFullscreen.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/unlockOrientation.html b/docs/docs/melonjs/device/unlockOrientation.html index 4f5260bdbc..85bd0239b2 100644 --- a/docs/docs/melonjs/device/unlockOrientation.html +++ b/docs/docs/melonjs/device/unlockOrientation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/unwatchAccelerometer.html b/docs/docs/melonjs/device/unwatchAccelerometer.html index fd5718adf9..f97e12f5ef 100644 --- a/docs/docs/melonjs/device/unwatchAccelerometer.html +++ b/docs/docs/melonjs/device/unwatchAccelerometer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/unwatchDeviceOrientation.html b/docs/docs/melonjs/device/unwatchDeviceOrientation.html index 86b99f32ea..d4adb561b0 100644 --- a/docs/docs/melonjs/device/unwatchDeviceOrientation.html +++ b/docs/docs/melonjs/device/unwatchDeviceOrientation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/vibrate.html b/docs/docs/melonjs/device/vibrate.html index 4548b09a62..a0f4616bcf 100644 --- a/docs/docs/melonjs/device/vibrate.html +++ b/docs/docs/melonjs/device/vibrate.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/watchAccelerometer.html b/docs/docs/melonjs/device/watchAccelerometer.html index 8bdce27ba3..81318fc9e8 100644 --- a/docs/docs/melonjs/device/watchAccelerometer.html +++ b/docs/docs/melonjs/device/watchAccelerometer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/device/watchDeviceOrientation.html b/docs/docs/melonjs/device/watchDeviceOrientation.html index 364efba672..6c73671fbe 100644 --- a/docs/docs/melonjs/device/watchDeviceOrientation.html +++ b/docs/docs/melonjs/device/watchDeviceOrientation.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/event.html b/docs/docs/melonjs/event.html index ea7c91e418..3fa764d9b3 100644 --- a/docs/docs/melonjs/event.html +++ b/docs/docs/melonjs/event.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/event/emit.html b/docs/docs/melonjs/event/emit.html index 51febd758f..4cc51b7ec5 100644 --- a/docs/docs/melonjs/event/emit.html +++ b/docs/docs/melonjs/event/emit.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/event/off.html b/docs/docs/melonjs/event/off.html index 48d85fb4d3..5f69e26fcd 100644 --- a/docs/docs/melonjs/event/off.html +++ b/docs/docs/melonjs/event/off.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/event/on.html b/docs/docs/melonjs/event/on.html index 09cf6d197b..48f69450d4 100644 --- a/docs/docs/melonjs/event/on.html +++ b/docs/docs/melonjs/event/on.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/event/once.html b/docs/docs/melonjs/event/once.html index 70b423912c..ea46a06f41 100644 --- a/docs/docs/melonjs/event/once.html +++ b/docs/docs/melonjs/event/once.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/game.html b/docs/docs/melonjs/game.html index 803d8240da..b0d57ea006 100644 --- a/docs/docs/melonjs/game.html +++ b/docs/docs/melonjs/game.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input.html b/docs/docs/melonjs/input.html index 95f8679170..d7b72e2cbd 100644 --- a/docs/docs/melonjs/input.html +++ b/docs/docs/melonjs/input.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/GAMEPAD.html b/docs/docs/melonjs/input/GAMEPAD.html index 8524211804..a6c07e2fbb 100644 --- a/docs/docs/melonjs/input/GAMEPAD.html +++ b/docs/docs/melonjs/input/GAMEPAD.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/GAMEPAD/AXES.html b/docs/docs/melonjs/input/GAMEPAD/AXES.html index f2f1571edb..673a07c529 100644 --- a/docs/docs/melonjs/input/GAMEPAD/AXES.html +++ b/docs/docs/melonjs/input/GAMEPAD/AXES.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/GAMEPAD/BUTTONS.html b/docs/docs/melonjs/input/GAMEPAD/BUTTONS.html index 59bab14ff2..2bd9086bed 100644 --- a/docs/docs/melonjs/input/GAMEPAD/BUTTONS.html +++ b/docs/docs/melonjs/input/GAMEPAD/BUTTONS.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/KEY.html b/docs/docs/melonjs/input/KEY.html index ca963e4db5..e7c8992c40 100644 --- a/docs/docs/melonjs/input/KEY.html +++ b/docs/docs/melonjs/input/KEY.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/bindGamepad.html b/docs/docs/melonjs/input/bindGamepad.html index e19e706286..73cfdb9b01 100644 --- a/docs/docs/melonjs/input/bindGamepad.html +++ b/docs/docs/melonjs/input/bindGamepad.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/bindKey.html b/docs/docs/melonjs/input/bindKey.html index 6a00b478a5..917aa21993 100644 --- a/docs/docs/melonjs/input/bindKey.html +++ b/docs/docs/melonjs/input/bindKey.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/bindPointer.html b/docs/docs/melonjs/input/bindPointer.html index f4cec0fa27..9d6a116f2e 100644 --- a/docs/docs/melonjs/input/bindPointer.html +++ b/docs/docs/melonjs/input/bindPointer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/exitPointerLock.html b/docs/docs/melonjs/input/exitPointerLock.html index a4b41d2723..ccf09bc0e5 100644 --- a/docs/docs/melonjs/input/exitPointerLock.html +++ b/docs/docs/melonjs/input/exitPointerLock.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/getBindingKey.html b/docs/docs/melonjs/input/getBindingKey.html index 8c4b5ba7e2..d86ac501af 100644 --- a/docs/docs/melonjs/input/getBindingKey.html +++ b/docs/docs/melonjs/input/getBindingKey.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/globalToLocal.html b/docs/docs/melonjs/input/globalToLocal.html index 948a09996f..1bdedb345c 100644 --- a/docs/docs/melonjs/input/globalToLocal.html +++ b/docs/docs/melonjs/input/globalToLocal.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/hasActiveEvents.html b/docs/docs/melonjs/input/hasActiveEvents.html index ae41901eed..5a6c39ec5d 100644 --- a/docs/docs/melonjs/input/hasActiveEvents.html +++ b/docs/docs/melonjs/input/hasActiveEvents.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/hasRegisteredEvents.html b/docs/docs/melonjs/input/hasRegisteredEvents.html index 3496439de0..c43d71c663 100644 --- a/docs/docs/melonjs/input/hasRegisteredEvents.html +++ b/docs/docs/melonjs/input/hasRegisteredEvents.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/isKeyPressed.html b/docs/docs/melonjs/input/isKeyPressed.html index 0dca5cff8d..2f7b93a5c4 100644 --- a/docs/docs/melonjs/input/isKeyPressed.html +++ b/docs/docs/melonjs/input/isKeyPressed.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/keyStatus.html b/docs/docs/melonjs/input/keyStatus.html index be0c95b61f..b9cb5ab3ee 100644 --- a/docs/docs/melonjs/input/keyStatus.html +++ b/docs/docs/melonjs/input/keyStatus.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/registerPointerEvent.html b/docs/docs/melonjs/input/registerPointerEvent.html index 580e56c9e7..7cfde0dd53 100644 --- a/docs/docs/melonjs/input/registerPointerEvent.html +++ b/docs/docs/melonjs/input/registerPointerEvent.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/releaseAllPointerEvents.html b/docs/docs/melonjs/input/releaseAllPointerEvents.html index da2bde321b..2cc8d0c76e 100644 --- a/docs/docs/melonjs/input/releaseAllPointerEvents.html +++ b/docs/docs/melonjs/input/releaseAllPointerEvents.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/releasePointerEvent.html b/docs/docs/melonjs/input/releasePointerEvent.html index f47f7c842c..3b647f3307 100644 --- a/docs/docs/melonjs/input/releasePointerEvent.html +++ b/docs/docs/melonjs/input/releasePointerEvent.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/requestPointerLock.html b/docs/docs/melonjs/input/requestPointerLock.html index 5cda30de13..af922e07d1 100644 --- a/docs/docs/melonjs/input/requestPointerLock.html +++ b/docs/docs/melonjs/input/requestPointerLock.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/setGamepadDeadzone.html b/docs/docs/melonjs/input/setGamepadDeadzone.html index 85010e9315..c16c1aeec6 100644 --- a/docs/docs/melonjs/input/setGamepadDeadzone.html +++ b/docs/docs/melonjs/input/setGamepadDeadzone.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/setTouchAction.html b/docs/docs/melonjs/input/setTouchAction.html index c98250836a..4f173d1cb3 100644 --- a/docs/docs/melonjs/input/setTouchAction.html +++ b/docs/docs/melonjs/input/setTouchAction.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/triggerKeyEvent.html b/docs/docs/melonjs/input/triggerKeyEvent.html index 763c735697..17ee1f25b2 100644 --- a/docs/docs/melonjs/input/triggerKeyEvent.html +++ b/docs/docs/melonjs/input/triggerKeyEvent.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/unbindGamepad.html b/docs/docs/melonjs/input/unbindGamepad.html index d8ac019620..463907690f 100644 --- a/docs/docs/melonjs/input/unbindGamepad.html +++ b/docs/docs/melonjs/input/unbindGamepad.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/unbindKey.html b/docs/docs/melonjs/input/unbindKey.html index 86c9147c58..93952aaef0 100644 --- a/docs/docs/melonjs/input/unbindKey.html +++ b/docs/docs/melonjs/input/unbindKey.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/unbindPointer.html b/docs/docs/melonjs/input/unbindPointer.html index a3265d7ed2..45b0afdd7c 100644 --- a/docs/docs/melonjs/input/unbindPointer.html +++ b/docs/docs/melonjs/input/unbindPointer.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/input/unlockKey.html b/docs/docs/melonjs/input/unlockKey.html index 2c50f6db89..d9af994687 100644 --- a/docs/docs/melonjs/input/unlockKey.html +++ b/docs/docs/melonjs/input/unlockKey.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/level.html b/docs/docs/melonjs/level.html index 686bc87dac..62ed79ede2 100644 --- a/docs/docs/melonjs/level.html +++ b/docs/docs/melonjs/level.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader.html b/docs/docs/melonjs/loader.html index c8bd899361..ece21f01e2 100644 --- a/docs/docs/melonjs/loader.html +++ b/docs/docs/melonjs/loader.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/Asset.html b/docs/docs/melonjs/loader/Asset.html index c8af8a8d5f..689b97b3f1 100644 --- a/docs/docs/melonjs/loader/Asset.html +++ b/docs/docs/melonjs/loader/Asset.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/getBinary.html b/docs/docs/melonjs/loader/getBinary.html index ec1dd631fe..a5941688e6 100644 --- a/docs/docs/melonjs/loader/getBinary.html +++ b/docs/docs/melonjs/loader/getBinary.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/getImage.html b/docs/docs/melonjs/loader/getImage.html index cd4cd066c9..639ab38155 100644 --- a/docs/docs/melonjs/loader/getImage.html +++ b/docs/docs/melonjs/loader/getImage.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/getJSON.html b/docs/docs/melonjs/loader/getJSON.html index f46a8a5468..9e86536f8e 100644 --- a/docs/docs/melonjs/loader/getJSON.html +++ b/docs/docs/melonjs/loader/getJSON.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/getTMX.html b/docs/docs/melonjs/loader/getTMX.html index c56c5d2193..552cc040e4 100644 --- a/docs/docs/melonjs/loader/getTMX.html +++ b/docs/docs/melonjs/loader/getTMX.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/load.html b/docs/docs/melonjs/loader/load.html index 25a2b78fb1..ed41e34b34 100644 --- a/docs/docs/melonjs/loader/load.html +++ b/docs/docs/melonjs/loader/load.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/preload.html b/docs/docs/melonjs/loader/preload.html index 7be1663993..c007558218 100644 --- a/docs/docs/melonjs/loader/preload.html +++ b/docs/docs/melonjs/loader/preload.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/setBaseURL.html b/docs/docs/melonjs/loader/setBaseURL.html index 51a1c8273d..8194275cc2 100644 --- a/docs/docs/melonjs/loader/setBaseURL.html +++ b/docs/docs/melonjs/loader/setBaseURL.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/setParser.html b/docs/docs/melonjs/loader/setParser.html index 4142f55734..b8da1c2a0b 100644 --- a/docs/docs/melonjs/loader/setParser.html +++ b/docs/docs/melonjs/loader/setParser.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/unload.html b/docs/docs/melonjs/loader/unload.html index 77aaa46c05..05f8abb3c2 100644 --- a/docs/docs/melonjs/loader/unload.html +++ b/docs/docs/melonjs/loader/unload.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/loader/unloadAll.html b/docs/docs/melonjs/loader/unloadAll.html index 2c517e4668..d653076108 100644 --- a/docs/docs/melonjs/loader/unloadAll.html +++ b/docs/docs/melonjs/loader/unloadAll.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/onresize.html b/docs/docs/melonjs/onresize.html index f8f4f3d35f..6197b7d68c 100644 --- a/docs/docs/melonjs/onresize.html +++ b/docs/docs/melonjs/onresize.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin.html b/docs/docs/melonjs/plugin.html index eee6f0de10..d79b6dcfad 100644 --- a/docs/docs/melonjs/plugin.html +++ b/docs/docs/melonjs/plugin.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin/Base.html b/docs/docs/melonjs/plugin/Base.html index cd7ba58eeb..47262329d6 100644 --- a/docs/docs/melonjs/plugin/Base.html +++ b/docs/docs/melonjs/plugin/Base.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin/BasePlugin.html b/docs/docs/melonjs/plugin/BasePlugin.html index 6d1d6d69a4..e7d3c3e851 100644 --- a/docs/docs/melonjs/plugin/BasePlugin.html +++ b/docs/docs/melonjs/plugin/BasePlugin.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin/get.html b/docs/docs/melonjs/plugin/get.html index 5c90b9689d..17f6492fa4 100644 --- a/docs/docs/melonjs/plugin/get.html +++ b/docs/docs/melonjs/plugin/get.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin/patch.html b/docs/docs/melonjs/plugin/patch.html index 7f642755b9..11375c4505 100644 --- a/docs/docs/melonjs/plugin/patch.html +++ b/docs/docs/melonjs/plugin/patch.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/plugin/register.html b/docs/docs/melonjs/plugin/register.html index 7f711646b4..c826dd40cb 100644 --- a/docs/docs/melonjs/plugin/register.html +++ b/docs/docs/melonjs/plugin/register.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/pool.html b/docs/docs/melonjs/pool.html index 0d7731af80..c8a3a0ee2f 100644 --- a/docs/docs/melonjs/pool.html +++ b/docs/docs/melonjs/pool.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/save.html b/docs/docs/melonjs/save.html index 8cff9d7181..0debd62fa2 100644 --- a/docs/docs/melonjs/save.html +++ b/docs/docs/melonjs/save.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/scale.html b/docs/docs/melonjs/scale.html index 9d39542e75..a898d8dbac 100644 --- a/docs/docs/melonjs/scale.html +++ b/docs/docs/melonjs/scale.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/application/application.js.html b/docs/docs/melonjs/src/application/application.js.html index ef3b17f08e..d6ed616713 100644 --- a/docs/docs/melonjs/src/application/application.js.html +++ b/docs/docs/melonjs/src/application/application.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/application/header.js.html b/docs/docs/melonjs/src/application/header.js.html index 66f95b54be..be9a3975e0 100644 --- a/docs/docs/melonjs/src/application/header.js.html +++ b/docs/docs/melonjs/src/application/header.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/application/resize.js.html b/docs/docs/melonjs/src/application/resize.js.html index 0ee2b1b049..dc1c416341 100644 --- a/docs/docs/melonjs/src/application/resize.js.html +++ b/docs/docs/melonjs/src/application/resize.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/application/settings.js.html b/docs/docs/melonjs/src/application/settings.js.html index 165108e079..d51766cfe2 100644 --- a/docs/docs/melonjs/src/application/settings.js.html +++ b/docs/docs/melonjs/src/application/settings.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/audio/audio.js.html b/docs/docs/melonjs/src/audio/audio.js.html index 6c3cb2cb3b..6de42be4a0 100644 --- a/docs/docs/melonjs/src/audio/audio.js.html +++ b/docs/docs/melonjs/src/audio/audio.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/camera/camera2d.js.html b/docs/docs/melonjs/src/camera/camera2d.js.html index 08c0d0c4b5..f6c9402cf0 100644 --- a/docs/docs/melonjs/src/camera/camera2d.js.html +++ b/docs/docs/melonjs/src/camera/camera2d.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/const.js.html b/docs/docs/melonjs/src/const.js.html index 777815ce0e..a9850db627 100644 --- a/docs/docs/melonjs/src/const.js.html +++ b/docs/docs/melonjs/src/const.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/ellipse.js.html b/docs/docs/melonjs/src/geometries/ellipse.js.html index ae3c7ed0d0..455219ac57 100644 --- a/docs/docs/melonjs/src/geometries/ellipse.js.html +++ b/docs/docs/melonjs/src/geometries/ellipse.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/line.js.html b/docs/docs/melonjs/src/geometries/line.js.html index eed502d0b9..2a5e8b5c36 100644 --- a/docs/docs/melonjs/src/geometries/line.js.html +++ b/docs/docs/melonjs/src/geometries/line.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/path2d.js.html b/docs/docs/melonjs/src/geometries/path2d.js.html index 7fd742965b..a9178f35ca 100644 --- a/docs/docs/melonjs/src/geometries/path2d.js.html +++ b/docs/docs/melonjs/src/geometries/path2d.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/point.js.html b/docs/docs/melonjs/src/geometries/point.js.html index b8d0391a5d..c846f43a1a 100644 --- a/docs/docs/melonjs/src/geometries/point.js.html +++ b/docs/docs/melonjs/src/geometries/point.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/poly.js.html b/docs/docs/melonjs/src/geometries/poly.js.html index 5f74a3750e..b3bcc59597 100644 --- a/docs/docs/melonjs/src/geometries/poly.js.html +++ b/docs/docs/melonjs/src/geometries/poly.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/rectangle.js.html b/docs/docs/melonjs/src/geometries/rectangle.js.html index eee074eed9..d1f3457962 100644 --- a/docs/docs/melonjs/src/geometries/rectangle.js.html +++ b/docs/docs/melonjs/src/geometries/rectangle.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/geometries/roundrect.js.html b/docs/docs/melonjs/src/geometries/roundrect.js.html index 991edcec3d..79ed403201 100644 --- a/docs/docs/melonjs/src/geometries/roundrect.js.html +++ b/docs/docs/melonjs/src/geometries/roundrect.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/index.js.html b/docs/docs/melonjs/src/index.js.html index ab38236675..0606780488 100644 --- a/docs/docs/melonjs/src/index.js.html +++ b/docs/docs/melonjs/src/index.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/input/gamepad.js.html b/docs/docs/melonjs/src/input/gamepad.js.html index 0047c820f2..ee0114eafe 100644 --- a/docs/docs/melonjs/src/input/gamepad.js.html +++ b/docs/docs/melonjs/src/input/gamepad.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/input/input.js.html b/docs/docs/melonjs/src/input/input.js.html index bb2917a9b2..f95eff96dc 100644 --- a/docs/docs/melonjs/src/input/input.js.html +++ b/docs/docs/melonjs/src/input/input.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/input/keyboard.js.html b/docs/docs/melonjs/src/input/keyboard.js.html index 7236dfe685..4e09122285 100644 --- a/docs/docs/melonjs/src/input/keyboard.js.html +++ b/docs/docs/melonjs/src/input/keyboard.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/input/pointer.js.html b/docs/docs/melonjs/src/input/pointer.js.html index 1da50dc0de..0c3d9af8a8 100644 --- a/docs/docs/melonjs/src/input/pointer.js.html +++ b/docs/docs/melonjs/src/input/pointer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/input/pointerevent.js.html b/docs/docs/melonjs/src/input/pointerevent.js.html index 70520d330c..e86011137e 100644 --- a/docs/docs/melonjs/src/input/pointerevent.js.html +++ b/docs/docs/melonjs/src/input/pointerevent.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/lang/console.js.html b/docs/docs/melonjs/src/lang/console.js.html index b693a3e5a3..a15adf7fe9 100644 --- a/docs/docs/melonjs/src/lang/console.js.html +++ b/docs/docs/melonjs/src/lang/console.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/lang/deprecated.js.html b/docs/docs/melonjs/src/lang/deprecated.js.html index d65c090933..1f4f4b8904 100644 --- a/docs/docs/melonjs/src/lang/deprecated.js.html +++ b/docs/docs/melonjs/src/lang/deprecated.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/level.js.html b/docs/docs/melonjs/src/level/level.js.html index 4ed67dfbc4..3f6cd1a6a1 100644 --- a/docs/docs/melonjs/src/level/level.js.html +++ b/docs/docs/melonjs/src/level/level.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXGroup.js.html b/docs/docs/melonjs/src/level/tiled/TMXGroup.js.html index 29ace6c8c8..204abc354a 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXGroup.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXGroup.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXLayer.js.html b/docs/docs/melonjs/src/level/tiled/TMXLayer.js.html index 609d7eb597..4c83e152a5 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXLayer.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXLayer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXObject.js.html b/docs/docs/melonjs/src/level/tiled/TMXObject.js.html index b3c637bc74..dd8962a280 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXObject.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXObject.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXTile.js.html b/docs/docs/melonjs/src/level/tiled/TMXTile.js.html index 82279131f6..b2eff86590 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXTile.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXTile.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXTileMap.js.html b/docs/docs/melonjs/src/level/tiled/TMXTileMap.js.html index 168158e53b..dd8d400a8e 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXTileMap.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXTileMap.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXTileset.js.html b/docs/docs/melonjs/src/level/tiled/TMXTileset.js.html index 160bad8fdb..6f5b18b6ea 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXTileset.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXTileset.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXTilesetGroup.js.html b/docs/docs/melonjs/src/level/tiled/TMXTilesetGroup.js.html index f808c18787..2a3865c54a 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXTilesetGroup.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXTilesetGroup.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/TMXUtils.js.html b/docs/docs/melonjs/src/level/tiled/TMXUtils.js.html index adb0cc6a3b..b13789a403 100644 --- a/docs/docs/melonjs/src/level/tiled/TMXUtils.js.html +++ b/docs/docs/melonjs/src/level/tiled/TMXUtils.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/constants.js.html b/docs/docs/melonjs/src/level/tiled/constants.js.html index de011112f6..cf05ce840d 100644 --- a/docs/docs/melonjs/src/level/tiled/constants.js.html +++ b/docs/docs/melonjs/src/level/tiled/constants.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/TMXHexagonalRenderer.js.html b/docs/docs/melonjs/src/level/tiled/renderer/TMXHexagonalRenderer.js.html index 6af7e53164..60a39f443b 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/TMXHexagonalRenderer.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/TMXHexagonalRenderer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/TMXIsometricRenderer.js.html b/docs/docs/melonjs/src/level/tiled/renderer/TMXIsometricRenderer.js.html index 8473c9926d..41f6775655 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/TMXIsometricRenderer.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/TMXIsometricRenderer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/TMXOrthogonalRenderer.js.html b/docs/docs/melonjs/src/level/tiled/renderer/TMXOrthogonalRenderer.js.html index 232cd3666a..a07da9ee2d 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/TMXOrthogonalRenderer.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/TMXOrthogonalRenderer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/TMXRenderer.js.html b/docs/docs/melonjs/src/level/tiled/renderer/TMXRenderer.js.html index 6a44ebb4eb..a06c38429c 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/TMXRenderer.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/TMXRenderer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/TMXStaggeredRenderer.js.html b/docs/docs/melonjs/src/level/tiled/renderer/TMXStaggeredRenderer.js.html index b8a2c3a091..ae9aafc40e 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/TMXStaggeredRenderer.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/TMXStaggeredRenderer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/level/tiled/renderer/autodetect.js.html b/docs/docs/melonjs/src/level/tiled/renderer/autodetect.js.html index 889ef6b5e8..fd6c2f2504 100644 --- a/docs/docs/melonjs/src/level/tiled/renderer/autodetect.js.html +++ b/docs/docs/melonjs/src/level/tiled/renderer/autodetect.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/cache.js.html b/docs/docs/melonjs/src/loader/cache.js.html index e962b787c8..df055f7acd 100644 --- a/docs/docs/melonjs/src/loader/cache.js.html +++ b/docs/docs/melonjs/src/loader/cache.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/loader.js.html b/docs/docs/melonjs/src/loader/loader.js.html index 53dc862612..fb1c0fa9db 100644 --- a/docs/docs/melonjs/src/loader/loader.js.html +++ b/docs/docs/melonjs/src/loader/loader.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/loadingscreen.js.html b/docs/docs/melonjs/src/loader/loadingscreen.js.html index eeae77d417..71cecfbd5f 100644 --- a/docs/docs/melonjs/src/loader/loadingscreen.js.html +++ b/docs/docs/melonjs/src/loader/loadingscreen.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/binary.js.html b/docs/docs/melonjs/src/loader/parsers/binary.js.html index 15c3fc1e53..c5f9495973 100644 --- a/docs/docs/melonjs/src/loader/parsers/binary.js.html +++ b/docs/docs/melonjs/src/loader/parsers/binary.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/fontface.js.html b/docs/docs/melonjs/src/loader/parsers/fontface.js.html index 5903035888..4de62f1f0a 100644 --- a/docs/docs/melonjs/src/loader/parsers/fontface.js.html +++ b/docs/docs/melonjs/src/loader/parsers/fontface.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/image.js.html b/docs/docs/melonjs/src/loader/parsers/image.js.html index df2669b661..4e5d69d1a7 100644 --- a/docs/docs/melonjs/src/loader/parsers/image.js.html +++ b/docs/docs/melonjs/src/loader/parsers/image.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/json.js.html b/docs/docs/melonjs/src/loader/parsers/json.js.html index a0c8d1eeda..5c3942f181 100644 --- a/docs/docs/melonjs/src/loader/parsers/json.js.html +++ b/docs/docs/melonjs/src/loader/parsers/json.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/script.js.html b/docs/docs/melonjs/src/loader/parsers/script.js.html index 0348b45787..5f164abd3d 100644 --- a/docs/docs/melonjs/src/loader/parsers/script.js.html +++ b/docs/docs/melonjs/src/loader/parsers/script.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/parsers/tmx.js.html b/docs/docs/melonjs/src/loader/parsers/tmx.js.html index 5e6152c950..f88e0cde38 100644 --- a/docs/docs/melonjs/src/loader/parsers/tmx.js.html +++ b/docs/docs/melonjs/src/loader/parsers/tmx.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/loader/settings.js.html b/docs/docs/melonjs/src/loader/settings.js.html index d24ef4c433..f9da5d5c16 100644 --- a/docs/docs/melonjs/src/loader/settings.js.html +++ b/docs/docs/melonjs/src/loader/settings.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/color.js.html b/docs/docs/melonjs/src/math/color.js.html index d510d1d6d0..62c249fab6 100644 --- a/docs/docs/melonjs/src/math/color.js.html +++ b/docs/docs/melonjs/src/math/color.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/math.js.html b/docs/docs/melonjs/src/math/math.js.html index 15e71f5ac7..2feac3cc9f 100644 --- a/docs/docs/melonjs/src/math/math.js.html +++ b/docs/docs/melonjs/src/math/math.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/matrix2.js.html b/docs/docs/melonjs/src/math/matrix2.js.html index f092652889..a02ebace9f 100644 --- a/docs/docs/melonjs/src/math/matrix2.js.html +++ b/docs/docs/melonjs/src/math/matrix2.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/matrix3.js.html b/docs/docs/melonjs/src/math/matrix3.js.html index 485e00a8b3..a73da367c3 100644 --- a/docs/docs/melonjs/src/math/matrix3.js.html +++ b/docs/docs/melonjs/src/math/matrix3.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/observable_vector2.js.html b/docs/docs/melonjs/src/math/observable_vector2.js.html index 1b9d4015d4..0c52b52a55 100644 --- a/docs/docs/melonjs/src/math/observable_vector2.js.html +++ b/docs/docs/melonjs/src/math/observable_vector2.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/observable_vector3.js.html b/docs/docs/melonjs/src/math/observable_vector3.js.html index 8ee9e0185d..3570f4fb0d 100644 --- a/docs/docs/melonjs/src/math/observable_vector3.js.html +++ b/docs/docs/melonjs/src/math/observable_vector3.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/vector2.js.html b/docs/docs/melonjs/src/math/vector2.js.html index fc6fe9c16e..e200c143d2 100644 --- a/docs/docs/melonjs/src/math/vector2.js.html +++ b/docs/docs/melonjs/src/math/vector2.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/math/vector3.js.html b/docs/docs/melonjs/src/math/vector3.js.html index baba8f50f0..f880750afa 100644 --- a/docs/docs/melonjs/src/math/vector3.js.html +++ b/docs/docs/melonjs/src/math/vector3.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/particles/emitter.js.html b/docs/docs/melonjs/src/particles/emitter.js.html index ef0587a83f..0d24f95b4d 100644 --- a/docs/docs/melonjs/src/particles/emitter.js.html +++ b/docs/docs/melonjs/src/particles/emitter.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/particles/particle.js.html b/docs/docs/melonjs/src/particles/particle.js.html index ba14474946..5b70ec179c 100644 --- a/docs/docs/melonjs/src/particles/particle.js.html +++ b/docs/docs/melonjs/src/particles/particle.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/particles/settings.js.html b/docs/docs/melonjs/src/particles/settings.js.html index f223cf47a8..32634c90f2 100644 --- a/docs/docs/melonjs/src/particles/settings.js.html +++ b/docs/docs/melonjs/src/particles/settings.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/body.js.html b/docs/docs/melonjs/src/physics/body.js.html index 15dd93f101..5988443c04 100644 --- a/docs/docs/melonjs/src/physics/body.js.html +++ b/docs/docs/melonjs/src/physics/body.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/bounds.js.html b/docs/docs/melonjs/src/physics/bounds.js.html index 06b4ac9bf0..c31caa9106 100644 --- a/docs/docs/melonjs/src/physics/bounds.js.html +++ b/docs/docs/melonjs/src/physics/bounds.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/collision.js.html b/docs/docs/melonjs/src/physics/collision.js.html index 960206d5a1..28e5ac67cc 100644 --- a/docs/docs/melonjs/src/physics/collision.js.html +++ b/docs/docs/melonjs/src/physics/collision.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/detector.js.html b/docs/docs/melonjs/src/physics/detector.js.html index 2666d6a887..30693f472a 100644 --- a/docs/docs/melonjs/src/physics/detector.js.html +++ b/docs/docs/melonjs/src/physics/detector.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/quadtree.js.html b/docs/docs/melonjs/src/physics/quadtree.js.html index 2b4d4149a3..8006f2f52c 100644 --- a/docs/docs/melonjs/src/physics/quadtree.js.html +++ b/docs/docs/melonjs/src/physics/quadtree.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/response.js.html b/docs/docs/melonjs/src/physics/response.js.html index d3b4259781..334c6c6e27 100644 --- a/docs/docs/melonjs/src/physics/response.js.html +++ b/docs/docs/melonjs/src/physics/response.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/sat.js.html b/docs/docs/melonjs/src/physics/sat.js.html index 2bcf2df0f9..cee473673d 100644 --- a/docs/docs/melonjs/src/physics/sat.js.html +++ b/docs/docs/melonjs/src/physics/sat.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/physics/world.js.html b/docs/docs/melonjs/src/physics/world.js.html index ec334f5e97..59ed1c50f1 100644 --- a/docs/docs/melonjs/src/physics/world.js.html +++ b/docs/docs/melonjs/src/physics/world.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/plugin/plugin.js.html b/docs/docs/melonjs/src/plugin/plugin.js.html index 1ca987155e..bdc6165dd6 100644 --- a/docs/docs/melonjs/src/plugin/plugin.js.html +++ b/docs/docs/melonjs/src/plugin/plugin.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/polyfill/console.js.html b/docs/docs/melonjs/src/polyfill/console.js.html index e1e2f46f0d..abe9b38f08 100644 --- a/docs/docs/melonjs/src/polyfill/console.js.html +++ b/docs/docs/melonjs/src/polyfill/console.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/polyfill/index.js.html b/docs/docs/melonjs/src/polyfill/index.js.html index 53a38dde9c..91542490b8 100644 --- a/docs/docs/melonjs/src/polyfill/index.js.html +++ b/docs/docs/melonjs/src/polyfill/index.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/polyfill/roundrect.js.html b/docs/docs/melonjs/src/polyfill/roundrect.js.html index 386ee7722d..93219fea04 100644 --- a/docs/docs/melonjs/src/polyfill/roundrect.js.html +++ b/docs/docs/melonjs/src/polyfill/roundrect.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/collectable.js.html b/docs/docs/melonjs/src/renderable/collectable.js.html index 77620f043a..5bf8598351 100644 --- a/docs/docs/melonjs/src/renderable/collectable.js.html +++ b/docs/docs/melonjs/src/renderable/collectable.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/colorlayer.js.html b/docs/docs/melonjs/src/renderable/colorlayer.js.html index a531714731..3ca44318d1 100644 --- a/docs/docs/melonjs/src/renderable/colorlayer.js.html +++ b/docs/docs/melonjs/src/renderable/colorlayer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/container.js.html b/docs/docs/melonjs/src/renderable/container.js.html index 65cb5a7a8e..c35835d133 100644 --- a/docs/docs/melonjs/src/renderable/container.js.html +++ b/docs/docs/melonjs/src/renderable/container.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/draggable.js.html b/docs/docs/melonjs/src/renderable/draggable.js.html index 5f557f27c4..08a66a2aed 100644 --- a/docs/docs/melonjs/src/renderable/draggable.js.html +++ b/docs/docs/melonjs/src/renderable/draggable.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/dragndrop.js.html b/docs/docs/melonjs/src/renderable/dragndrop.js.html index ed4a7bcc9e..fd0bba0b9b 100644 --- a/docs/docs/melonjs/src/renderable/dragndrop.js.html +++ b/docs/docs/melonjs/src/renderable/dragndrop.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/entity/entity.js.html b/docs/docs/melonjs/src/renderable/entity/entity.js.html index cc2f4669e3..2893803ac9 100644 --- a/docs/docs/melonjs/src/renderable/entity/entity.js.html +++ b/docs/docs/melonjs/src/renderable/entity/entity.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/imagelayer.js.html b/docs/docs/melonjs/src/renderable/imagelayer.js.html index a920c6f6e2..df41aee37c 100644 --- a/docs/docs/melonjs/src/renderable/imagelayer.js.html +++ b/docs/docs/melonjs/src/renderable/imagelayer.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/light2d.js.html b/docs/docs/melonjs/src/renderable/light2d.js.html index a4571c22bc..d8ccc59567 100644 --- a/docs/docs/melonjs/src/renderable/light2d.js.html +++ b/docs/docs/melonjs/src/renderable/light2d.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/nineslicesprite.js.html b/docs/docs/melonjs/src/renderable/nineslicesprite.js.html index 12466ccdbf..09bc845281 100644 --- a/docs/docs/melonjs/src/renderable/nineslicesprite.js.html +++ b/docs/docs/melonjs/src/renderable/nineslicesprite.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/renderable.js.html b/docs/docs/melonjs/src/renderable/renderable.js.html index 2ca8f86a7e..7f75a77ce6 100644 --- a/docs/docs/melonjs/src/renderable/renderable.js.html +++ b/docs/docs/melonjs/src/renderable/renderable.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/sprite.js.html b/docs/docs/melonjs/src/renderable/sprite.js.html index ce979a7231..9de7080fbf 100644 --- a/docs/docs/melonjs/src/renderable/sprite.js.html +++ b/docs/docs/melonjs/src/renderable/sprite.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/bitmaptext.js.html b/docs/docs/melonjs/src/renderable/text/bitmaptext.js.html index 16ddef1ce1..1ed08c62c9 100644 --- a/docs/docs/melonjs/src/renderable/text/bitmaptext.js.html +++ b/docs/docs/melonjs/src/renderable/text/bitmaptext.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/bitmaptextdata.js.html b/docs/docs/melonjs/src/renderable/text/bitmaptextdata.js.html index fefa164edf..dc678f7b05 100644 --- a/docs/docs/melonjs/src/renderable/text/bitmaptextdata.js.html +++ b/docs/docs/melonjs/src/renderable/text/bitmaptextdata.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/glyph.js.html b/docs/docs/melonjs/src/renderable/text/glyph.js.html index d93aef4cde..95fa6c2a2e 100644 --- a/docs/docs/melonjs/src/renderable/text/glyph.js.html +++ b/docs/docs/melonjs/src/renderable/text/glyph.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/text.js.html b/docs/docs/melonjs/src/renderable/text/text.js.html index 84965c171a..bacf155d07 100644 --- a/docs/docs/melonjs/src/renderable/text/text.js.html +++ b/docs/docs/melonjs/src/renderable/text/text.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/textmetrics.js.html b/docs/docs/melonjs/src/renderable/text/textmetrics.js.html index 8577c380a7..59dfc7cf83 100644 --- a/docs/docs/melonjs/src/renderable/text/textmetrics.js.html +++ b/docs/docs/melonjs/src/renderable/text/textmetrics.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/text/textstyle.js.html b/docs/docs/melonjs/src/renderable/text/textstyle.js.html index 8c3a3d99a9..81a3766281 100644 --- a/docs/docs/melonjs/src/renderable/text/textstyle.js.html +++ b/docs/docs/melonjs/src/renderable/text/textstyle.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/trigger.js.html b/docs/docs/melonjs/src/renderable/trigger.js.html index 04dd31eae7..998fb85f43 100644 --- a/docs/docs/melonjs/src/renderable/trigger.js.html +++ b/docs/docs/melonjs/src/renderable/trigger.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/ui/uibaseelement.js.html b/docs/docs/melonjs/src/renderable/ui/uibaseelement.js.html index 6c30ae2284..1f3ed656df 100644 --- a/docs/docs/melonjs/src/renderable/ui/uibaseelement.js.html +++ b/docs/docs/melonjs/src/renderable/ui/uibaseelement.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/ui/uispriteelement.js.html b/docs/docs/melonjs/src/renderable/ui/uispriteelement.js.html index 8a630d4e81..7df8921eda 100644 --- a/docs/docs/melonjs/src/renderable/ui/uispriteelement.js.html +++ b/docs/docs/melonjs/src/renderable/ui/uispriteelement.js.html @@ -1,5 +1,5 @@ - + diff --git a/docs/docs/melonjs/src/renderable/ui/uitextbutton.js.html b/docs/docs/melonjs/src/renderable/ui/uitextbutton.js.html index 869450cb17..c65ccf4aae 100644 --- a/docs/docs/melonjs/src/renderable/ui/uitextbutton.js.html +++ b/docs/docs/melonjs/src/renderable/ui/uitextbutton.js.html @@ -1,5 +1,5 @@ - + @@ -632,6 +632,10 @@ 140
                              • +
                              • + 141 +
                              • +
                              import BitmapText from "../text/bitmaptext.js";
                               import RoundRect from "../../geometries/roundrect.js";
                              @@ -655,8 +659,8 @@
                                    * @param {number} [settings.size=1] - The scale factor of the BitmapText
                                    * @param {string} [settings.text] - The text to display
                                    * @param {string} [settings.bindKey] - The key to bind the action to (default: none)
                              -     * @param {string} [settings.backgroundColor="#00aa0080"] - The css value of a background color
                              -     * @param {string} [settings.hoverColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button
                              +     * @param {string} [settings.hoverOffColor="#00aa0080"] - The css value of a color to be used if the pointer is not hovering over the button
                              +     * @param {string} [settings.hoverOnColor="#00ff00ff"] - The css value of a color to be used if the pointer hovers over the button
                                    * @param {string} [settings.borderStrokeColor="#000000"] - The css value of a color to be used to draw the border
                                    * @param {string} [settings.fillStyle] - The css value of a tint color to be used to tint the BitmapText
                                    * @param {string} [settings.textAlign="center"] - horizontal text alignment
                              @@ -673,6 +677,8 @@
                                    *              // if you omit the next two, size is calculated by the size of the text
                                    *              borderWidth: 200,
                                    *              borderHeight: 20,
                              +     *              backgroundColor: '#00aa0080',
                              +     *              hoverColor: '#00ff00ff'
                                    *          });
                                    *      }
                                    *
                              @@ -693,16 +699,18 @@
                                       this.bindKey = settings.bindKey || -1;
                               
                                       /**
                              -         * The css value of a background color
                              +         * The css value of a color to be used if the pointer is nothovering over the button
                                        * @type {string}
                                        */
                              -        this.backgroundColor = settings.backgroundColor || "#00aa0080";
                              +        // keep settings.backgroundColor for backward compatibility
                              +        this.hoverOffColor = settings.hoverOffColor || settings.backgroundColor || "#00aa0080";
                               
                                       /**
                                        * The css value of a color to be used if the pointer hovers over the button
                                        * @type {string}
                                        */
                              -        this.hoverColor = settings.hoverColor || "#00ff00ff";
                              +        // keep settings.hoverColor for backward compatibility
                              +        this.hoverOnColor = settings.hoverOnColor || settings.hoverColor || "#00ff00ff";
                               
                                       /**
                                        * The css value of a color to be used to draw the border
                              @@ -757,16 +765,13 @@
                               
                                   draw(renderer) {
                                       if (this.hover === true) {
                              -            renderer.setColor(this.hoverColor);
                              +            renderer.setColor(this.hoverOnColor);
                                       } else {
                              -            renderer.setColor(this.backgroundColor);
                              +            renderer.setColor(this.hoverOffColor);
                                       }
                                       renderer.fill(this.border);
                                       renderer.setColor(this.borderStrokeColor);
                                       renderer.stroke(this.border);
                              -        this.bitmapText.preDraw(renderer);
                              -        this.bitmapText.draw(renderer);
                              -        this.bitmapText.postDraw(renderer);
                                       super.draw(renderer);
                                   }
                               }
                              diff --git a/docs/docs/melonjs/src/state/stage.js.html b/docs/docs/melonjs/src/state/stage.js.html
                              index d26bc3d67f..601aa7ff75 100644
                              --- a/docs/docs/melonjs/src/state/stage.js.html
                              +++ b/docs/docs/melonjs/src/state/stage.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/state/state.js.html b/docs/docs/melonjs/src/state/state.js.html
                              index 70043c9dc8..3714329446 100644
                              --- a/docs/docs/melonjs/src/state/state.js.html
                              +++ b/docs/docs/melonjs/src/state/state.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/device.js.html b/docs/docs/melonjs/src/system/device.js.html
                              index 116a822249..41d6cbe322 100644
                              --- a/docs/docs/melonjs/src/system/device.js.html
                              +++ b/docs/docs/melonjs/src/system/device.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/dom.js.html b/docs/docs/melonjs/src/system/dom.js.html
                              index 3b30482ea9..68d81865ed 100644
                              --- a/docs/docs/melonjs/src/system/dom.js.html
                              +++ b/docs/docs/melonjs/src/system/dom.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/event.js.html b/docs/docs/melonjs/src/system/event.js.html
                              index e2809804c4..9352568c30 100644
                              --- a/docs/docs/melonjs/src/system/event.js.html
                              +++ b/docs/docs/melonjs/src/system/event.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/platform.js.html b/docs/docs/melonjs/src/system/platform.js.html
                              index 83f4c57c3d..2643b9bc78 100644
                              --- a/docs/docs/melonjs/src/system/platform.js.html
                              +++ b/docs/docs/melonjs/src/system/platform.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/pooling.js.html b/docs/docs/melonjs/src/system/pooling.js.html
                              index fdfb5c9eb7..c8c230948f 100644
                              --- a/docs/docs/melonjs/src/system/pooling.js.html
                              +++ b/docs/docs/melonjs/src/system/pooling.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/save.js.html b/docs/docs/melonjs/src/system/save.js.html
                              index 8fc1b8ecfd..14302ad5ac 100644
                              --- a/docs/docs/melonjs/src/system/save.js.html
                              +++ b/docs/docs/melonjs/src/system/save.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/system/timer.js.html b/docs/docs/melonjs/src/system/timer.js.html
                              index ffed5ae057..ce420f3af0 100644
                              --- a/docs/docs/melonjs/src/system/timer.js.html
                              +++ b/docs/docs/melonjs/src/system/timer.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/tweens/easing.js.html b/docs/docs/melonjs/src/tweens/easing.js.html
                              index 355da92d49..f885397b39 100644
                              --- a/docs/docs/melonjs/src/tweens/easing.js.html
                              +++ b/docs/docs/melonjs/src/tweens/easing.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/tweens/interpolation.js.html b/docs/docs/melonjs/src/tweens/interpolation.js.html
                              index 4b8399430a..4c6e27107b 100644
                              --- a/docs/docs/melonjs/src/tweens/interpolation.js.html
                              +++ b/docs/docs/melonjs/src/tweens/interpolation.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/tweens/tween.js.html b/docs/docs/melonjs/src/tweens/tween.js.html
                              index 815ec865db..dc38c3b6cc 100644
                              --- a/docs/docs/melonjs/src/tweens/tween.js.html
                              +++ b/docs/docs/melonjs/src/tweens/tween.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/agent.js.html b/docs/docs/melonjs/src/utils/agent.js.html
                              index 1e86449c6f..2c9e9638a6 100644
                              --- a/docs/docs/melonjs/src/utils/agent.js.html
                              +++ b/docs/docs/melonjs/src/utils/agent.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/array.js.html b/docs/docs/melonjs/src/utils/array.js.html
                              index 7178988dbf..c3e107da49 100644
                              --- a/docs/docs/melonjs/src/utils/array.js.html
                              +++ b/docs/docs/melonjs/src/utils/array.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/file.js.html b/docs/docs/melonjs/src/utils/file.js.html
                              index e377659272..9697d24503 100644
                              --- a/docs/docs/melonjs/src/utils/file.js.html
                              +++ b/docs/docs/melonjs/src/utils/file.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/function.js.html b/docs/docs/melonjs/src/utils/function.js.html
                              index 3d625b2e94..ff94b7dc8f 100644
                              --- a/docs/docs/melonjs/src/utils/function.js.html
                              +++ b/docs/docs/melonjs/src/utils/function.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/string.js.html b/docs/docs/melonjs/src/utils/string.js.html
                              index 7336bc31ba..5127fe6207 100644
                              --- a/docs/docs/melonjs/src/utils/string.js.html
                              +++ b/docs/docs/melonjs/src/utils/string.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/utils/utils.js.html b/docs/docs/melonjs/src/utils/utils.js.html
                              index ae2ae29def..a9230441eb 100644
                              --- a/docs/docs/melonjs/src/utils/utils.js.html
                              +++ b/docs/docs/melonjs/src/utils/utils.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/canvas/canvas_renderer.js.html b/docs/docs/melonjs/src/video/canvas/canvas_renderer.js.html
                              index a9b56904ae..5946baad5c 100644
                              --- a/docs/docs/melonjs/src/video/canvas/canvas_renderer.js.html
                              +++ b/docs/docs/melonjs/src/video/canvas/canvas_renderer.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/renderer.js.html b/docs/docs/melonjs/src/video/renderer.js.html
                              index c51c910d10..a26c5ae60d 100644
                              --- a/docs/docs/melonjs/src/video/renderer.js.html
                              +++ b/docs/docs/melonjs/src/video/renderer.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/texture/atlas.js.html b/docs/docs/melonjs/src/video/texture/atlas.js.html
                              index 5cecc2bbb1..7b27ab9a9b 100644
                              --- a/docs/docs/melonjs/src/video/texture/atlas.js.html
                              +++ b/docs/docs/melonjs/src/video/texture/atlas.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/texture/cache.js.html b/docs/docs/melonjs/src/video/texture/cache.js.html
                              index d4fedfd4af..61319e7457 100644
                              --- a/docs/docs/melonjs/src/video/texture/cache.js.html
                              +++ b/docs/docs/melonjs/src/video/texture/cache.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/texture/canvas_texture.js.html b/docs/docs/melonjs/src/video/texture/canvas_texture.js.html
                              index a92bc6222e..8334184e9a 100644
                              --- a/docs/docs/melonjs/src/video/texture/canvas_texture.js.html
                              +++ b/docs/docs/melonjs/src/video/texture/canvas_texture.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/utils/autodetect.js.html b/docs/docs/melonjs/src/video/utils/autodetect.js.html
                              index c29c675c74..0a2a2875dd 100644
                              --- a/docs/docs/melonjs/src/video/utils/autodetect.js.html
                              +++ b/docs/docs/melonjs/src/video/utils/autodetect.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/video.js.html b/docs/docs/melonjs/src/video/video.js.html
                              index 7ee002fc88..5d87dccbe3 100644
                              --- a/docs/docs/melonjs/src/video/video.js.html
                              +++ b/docs/docs/melonjs/src/video/video.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/buffer/vertex.js.html b/docs/docs/melonjs/src/video/webgl/buffer/vertex.js.html
                              index b0d6903de2..e31c3f6d8f 100644
                              --- a/docs/docs/melonjs/src/video/webgl/buffer/vertex.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/buffer/vertex.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/compositors/compositor.js.html b/docs/docs/melonjs/src/video/webgl/compositors/compositor.js.html
                              index ec57643647..332b62f929 100644
                              --- a/docs/docs/melonjs/src/video/webgl/compositors/compositor.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/compositors/compositor.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/compositors/primitive_compositor.js.html b/docs/docs/melonjs/src/video/webgl/compositors/primitive_compositor.js.html
                              index d02a6f4f06..6d43791dfe 100644
                              --- a/docs/docs/melonjs/src/video/webgl/compositors/primitive_compositor.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/compositors/primitive_compositor.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/compositors/quad_compositor.js.html b/docs/docs/melonjs/src/video/webgl/compositors/quad_compositor.js.html
                              index b1eadb8c11..9cb6fe1ed4 100644
                              --- a/docs/docs/melonjs/src/video/webgl/compositors/quad_compositor.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/compositors/quad_compositor.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/glshader.js.html b/docs/docs/melonjs/src/video/webgl/glshader.js.html
                              index 03154cc040..8a4dcff761 100644
                              --- a/docs/docs/melonjs/src/video/webgl/glshader.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/glshader.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/utils/attributes.js.html b/docs/docs/melonjs/src/video/webgl/utils/attributes.js.html
                              index 889ac23a48..b8504956c6 100644
                              --- a/docs/docs/melonjs/src/video/webgl/utils/attributes.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/utils/attributes.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/utils/precision.js.html b/docs/docs/melonjs/src/video/webgl/utils/precision.js.html
                              index a820b01572..564710bc8e 100644
                              --- a/docs/docs/melonjs/src/video/webgl/utils/precision.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/utils/precision.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/utils/program.js.html b/docs/docs/melonjs/src/video/webgl/utils/program.js.html
                              index b561414a6a..dc2f15bc52 100644
                              --- a/docs/docs/melonjs/src/video/webgl/utils/program.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/utils/program.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/utils/string.js.html b/docs/docs/melonjs/src/video/webgl/utils/string.js.html
                              index df670c9d5a..c15cb0c3d9 100644
                              --- a/docs/docs/melonjs/src/video/webgl/utils/string.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/utils/string.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/utils/uniforms.js.html b/docs/docs/melonjs/src/video/webgl/utils/uniforms.js.html
                              index b8f0979811..12ad6e7851 100644
                              --- a/docs/docs/melonjs/src/video/webgl/utils/uniforms.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/utils/uniforms.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/src/video/webgl/webgl_renderer.js.html b/docs/docs/melonjs/src/video/webgl/webgl_renderer.js.html
                              index eeab52f2d4..b7604312da 100644
                              --- a/docs/docs/melonjs/src/video/webgl/webgl_renderer.js.html
                              +++ b/docs/docs/melonjs/src/video/webgl/webgl_renderer.js.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/state.html b/docs/docs/melonjs/state.html
                              index 9c24eb1c85..e095d32d39 100644
                              --- a/docs/docs/melonjs/state.html
                              +++ b/docs/docs/melonjs/state.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/timer.html b/docs/docs/melonjs/timer.html
                              index c8d636d05c..b4a294cb1f 100644
                              --- a/docs/docs/melonjs/timer.html
                              +++ b/docs/docs/melonjs/timer.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils.html b/docs/docs/melonjs/utils.html
                              index 18dd8813ae..9e644021b3 100644
                              --- a/docs/docs/melonjs/utils.html
                              +++ b/docs/docs/melonjs/utils.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/agent.html b/docs/docs/melonjs/utils/agent.html
                              index 1fcdbffc86..8a53e33efe 100644
                              --- a/docs/docs/melonjs/utils/agent.html
                              +++ b/docs/docs/melonjs/utils/agent.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/agent/prefixed.html b/docs/docs/melonjs/utils/agent/prefixed.html
                              index 384ecf85a1..9328bf2033 100644
                              --- a/docs/docs/melonjs/utils/agent/prefixed.html
                              +++ b/docs/docs/melonjs/utils/agent/prefixed.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/agent/setPrefixed.html b/docs/docs/melonjs/utils/agent/setPrefixed.html
                              index f13f546192..9b58f194f3 100644
                              --- a/docs/docs/melonjs/utils/agent/setPrefixed.html
                              +++ b/docs/docs/melonjs/utils/agent/setPrefixed.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/array.html b/docs/docs/melonjs/utils/array.html
                              index 487452e400..435ef7ccf8 100644
                              --- a/docs/docs/melonjs/utils/array.html
                              +++ b/docs/docs/melonjs/utils/array.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/array/random.html b/docs/docs/melonjs/utils/array/random.html
                              index 3c6da41733..ab2ae99f52 100644
                              --- a/docs/docs/melonjs/utils/array/random.html
                              +++ b/docs/docs/melonjs/utils/array/random.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/array/remove.html b/docs/docs/melonjs/utils/array/remove.html
                              index c491f272a9..9f43e721ca 100644
                              --- a/docs/docs/melonjs/utils/array/remove.html
                              +++ b/docs/docs/melonjs/utils/array/remove.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/array/weightedRandom.html b/docs/docs/melonjs/utils/array/weightedRandom.html
                              index 38b2e2633e..8f6fcf0b11 100644
                              --- a/docs/docs/melonjs/utils/array/weightedRandom.html
                              +++ b/docs/docs/melonjs/utils/array/weightedRandom.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/checkVersion.html b/docs/docs/melonjs/utils/checkVersion.html
                              index 6f7a2be93b..c4fac6f35d 100644
                              --- a/docs/docs/melonjs/utils/checkVersion.html
                              +++ b/docs/docs/melonjs/utils/checkVersion.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/file.html b/docs/docs/melonjs/utils/file.html
                              index 11763436da..1c7390819c 100644
                              --- a/docs/docs/melonjs/utils/file.html
                              +++ b/docs/docs/melonjs/utils/file.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/file/getBasename.html b/docs/docs/melonjs/utils/file/getBasename.html
                              index 3945902f22..e2f635d7fa 100644
                              --- a/docs/docs/melonjs/utils/file/getBasename.html
                              +++ b/docs/docs/melonjs/utils/file/getBasename.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/file/getExtension.html b/docs/docs/melonjs/utils/file/getExtension.html
                              index 749fd06883..958a767bfa 100644
                              --- a/docs/docs/melonjs/utils/file/getExtension.html
                              +++ b/docs/docs/melonjs/utils/file/getExtension.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/file/getPath.html b/docs/docs/melonjs/utils/file/getPath.html
                              index 8d0e36fbea..7e3c7f1997 100644
                              --- a/docs/docs/melonjs/utils/file/getPath.html
                              +++ b/docs/docs/melonjs/utils/file/getPath.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/function.html b/docs/docs/melonjs/utils/function.html
                              index 22e460da5c..191d5348e4 100644
                              --- a/docs/docs/melonjs/utils/function.html
                              +++ b/docs/docs/melonjs/utils/function.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/function/defer.html b/docs/docs/melonjs/utils/function/defer.html
                              index 9226c5e3c9..6216481443 100644
                              --- a/docs/docs/melonjs/utils/function/defer.html
                              +++ b/docs/docs/melonjs/utils/function/defer.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/function/throttle.html b/docs/docs/melonjs/utils/function/throttle.html
                              index bf32a82b49..ab361d59c2 100644
                              --- a/docs/docs/melonjs/utils/function/throttle.html
                              +++ b/docs/docs/melonjs/utils/function/throttle.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/getUriFragment.html b/docs/docs/melonjs/utils/getUriFragment.html
                              index 513e8480f8..ad76c7dddd 100644
                              --- a/docs/docs/melonjs/utils/getUriFragment.html
                              +++ b/docs/docs/melonjs/utils/getUriFragment.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string.html b/docs/docs/melonjs/utils/string.html
                              index 4739256ccf..d3f20c7505 100644
                              --- a/docs/docs/melonjs/utils/string.html
                              +++ b/docs/docs/melonjs/utils/string.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string/capitalize.html b/docs/docs/melonjs/utils/string/capitalize.html
                              index 865b6e144a..83638025cf 100644
                              --- a/docs/docs/melonjs/utils/string/capitalize.html
                              +++ b/docs/docs/melonjs/utils/string/capitalize.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string/isBoolean.html b/docs/docs/melonjs/utils/string/isBoolean.html
                              index d850b6aa44..1d2b6887a3 100644
                              --- a/docs/docs/melonjs/utils/string/isBoolean.html
                              +++ b/docs/docs/melonjs/utils/string/isBoolean.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string/isDataUrl.html b/docs/docs/melonjs/utils/string/isDataUrl.html
                              index 7bc8b1a89d..bf725a28f4 100644
                              --- a/docs/docs/melonjs/utils/string/isDataUrl.html
                              +++ b/docs/docs/melonjs/utils/string/isDataUrl.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string/isNumeric.html b/docs/docs/melonjs/utils/string/isNumeric.html
                              index 65737209c2..c2d4c5a628 100644
                              --- a/docs/docs/melonjs/utils/string/isNumeric.html
                              +++ b/docs/docs/melonjs/utils/string/isNumeric.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/utils/string/toHex.html b/docs/docs/melonjs/utils/string/toHex.html
                              index e333c309ec..1c761b7c7e 100644
                              --- a/docs/docs/melonjs/utils/string/toHex.html
                              +++ b/docs/docs/melonjs/utils/string/toHex.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/video.html b/docs/docs/melonjs/video.html
                              index a0956969d2..f1b405b201 100644
                              --- a/docs/docs/melonjs/video.html
                              +++ b/docs/docs/melonjs/video.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/video/createCanvas.html b/docs/docs/melonjs/video/createCanvas.html
                              index 133b3cb082..78361755cf 100644
                              --- a/docs/docs/melonjs/video/createCanvas.html
                              +++ b/docs/docs/melonjs/video/createCanvas.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/video/getParent.html b/docs/docs/melonjs/video/getParent.html
                              index ad72094697..20991ec706 100644
                              --- a/docs/docs/melonjs/video/getParent.html
                              +++ b/docs/docs/melonjs/video/getParent.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/video/init.html b/docs/docs/melonjs/video/init.html
                              index 0cffce2a7d..d83cd323eb 100644
                              --- a/docs/docs/melonjs/video/init.html
                              +++ b/docs/docs/melonjs/video/init.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/melonjs/warning.html b/docs/docs/melonjs/warning.html
                              index 39d857b630..693876e6c1 100644
                              --- a/docs/docs/melonjs/warning.html
                              +++ b/docs/docs/melonjs/warning.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +
                               
                               
                                 
                              diff --git a/docs/docs/settings.html b/docs/docs/settings.html
                              index b493e853e5..5f8d7f8cde 100644
                              --- a/docs/docs/settings.html
                              +++ b/docs/docs/settings.html
                              @@ -1,5 +1,5 @@
                               
                              -
                              +